import GridData from '../grid.js';
import GridConnections from '../gridConnections.js';
import Rule from '../rules/rule.js';
import TileData from '../tile.js';
import Symbol from '../symbols/symbol.js';
import { AnyConfig } from '../config.js';
import { Puzzle, PuzzleData } from '../puzzle.js';
import { ControlLine } from '../rules/musicControlLine.js';
import GridZones from '../gridZones.js';
import SerializerV0 from './serializer_v0.js';
import Instruction from '../instruction.js';
export default class SerializerChecksum extends SerializerV0 {
    readonly version: number;
    parseTile(_str: string): TileData;
    stringifyControlLine(line: ControlLine): string;
    parseControlLine(_str: string): ControlLine;
    stringifyConfig(instruction: Instruction, config: AnyConfig): string;
    parseConfig(_configs: readonly AnyConfig[], _entry: string): [string, unknown];
    parseRule(_str: string): Rule;
    parseSymbol(_str: string): Symbol;
    parseConnections(_input: string): GridConnections;
    stringifyZones(zones: GridZones): string;
    parseZones(_input: string): GridZones;
    parseTiles(_input: string): TileData[][];
    stringifyRules(rules: readonly Rule[]): string;
    parseRules(_input: string): Rule[];
    stringifySymbols(symbols: ReadonlyMap<string, readonly Symbol[]>): string;
    parseSymbols(_input: string): Map<string, Symbol[]>;
    stringifyGrid(grid: GridData): string;
    parseGrid(_input: string): GridData;
    stringifyGridWithSolution(puzzle: PuzzleData): string;
    parseGridWithSolution(_input: string): PuzzleData;
    stringifyPuzzle(puzzle: Puzzle): string;
    parsePuzzle(_input: string): Puzzle;
}
