export declare class VanillaState {
    state: number[];
    isGround: boolean;
    numObjects: number;
    maxHeight: number;
    constructor(state: number[]);
    toString(): string;
    entry(from?: VanillaState): VanillaSiteswap;
    exit(to?: VanillaState): VanillaSiteswap;
    static GroundState(numObjects: number): VanillaState;
    static IsShiftValid(s1: VanillaState, s2: VanillaState, shift: number): boolean;
    static ShortestTransitionLength(s1: VanillaState, s2: VanillaState): number;
    static FindLandings(s1: VanillaState, s2: VanillaState, shift: number): number[];
    static GetTransition(s: VanillaState, length: number, land_times: number[]): VanillaSiteswap;
    static ShortestTransition(s1: VanillaState, s2: VanillaState): VanillaSiteswap;
    static AllTransitionsOfLength(s1: VanillaState, s2: VanillaState, length: number): Generator<VanillaSiteswap, void, unknown>;
}
export declare class VanillaSiteswap {
    numObjects: number;
    period: number;
    maxHeight: number;
    maxMultiplex: number;
    isValid: boolean;
    errorMessage: string;
    throws: number[][];
    state: VanillaState;
    constructor(throws: number[][]);
    validate(): boolean;
    toString(): string;
    toStack(): number[];
    toStackString(): string;
    static ParseStack(input: string): VanillaSiteswap;
    static Parse(input: string): VanillaSiteswap;
}
