Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
26 lines (22 sloc) 702 Bytes
import {MoveExpander} from "./move-expander"
// TODO: Properly handle freezing
export interface OrbitTransformation {
permutation: number[]
orientation: number[]
}
// TODO: Use a list instead of an object for performance?
export interface Transformation {
[/* orbit name */key: string]: OrbitTransformation
}
export interface OrbitDefinition {
numPieces: number
orientations: number
}
export interface KPuzzleDefinition {
name: string
orbits: {[/* orbit name */key: string]: OrbitDefinition}
startPieces: Transformation // TODO: Expose a way to get the transformed start pieces.
moves: {[/* move name */key: string]: Transformation}
svg?: string
moveExpander?: MoveExpander;
}
You can’t perform that action at this time.