declare type RequiredCellDirection = {
    cells: number[];
    len: number;
};
export declare type CellDirection = RequiredCellDirection & Partial<{
    clue: string;
    clueIndex: number;
}>;
export declare type Cell = {
    across: CellDirection;
    cell: number;
    clueIndex: number;
    down: CellDirection;
    isAcross: boolean;
    isDown: boolean;
    isBlack: boolean;
    isStart: boolean;
    value: string;
};
export declare type Row = Cell[];
export declare type Grid = Row[];
export declare type Header = {
    bic: number[];
    checksum: number[];
    cibChecksum: number[];
    clues: number[];
    height: number[];
    magic: number[];
    maskedHighChecksum: number[];
    maskedLowChecksum: number[];
    reserved1c: number[];
    reserved20: number[];
    unknown: number[];
    unknown32: number[];
    unknownMask: number[];
    versionString: number[];
    width: number[];
};
declare type RequiredPuz = {
    valid: boolean;
};
export declare type Puz = RequiredPuz & Partial<{
    author: string;
    clues: string[];
    copyright: string;
    error: string;
    grid: Grid;
    header: Header;
    solution: number[];
    title: string;
}>;
export {};
