import { type FormatOptions } from '../formatter/index.js'; export * from './diff.js'; export * from './notebook.js'; export declare const FORMAT_VERSION = 1; export declare const FORMAT_HEADER_PREFIX = "// dql-format:"; export interface CanonicalizeOptions extends FormatOptions { /** Override the emitted format version. Defaults to FORMAT_VERSION. */ version?: number; } /** * Return the declared format version of a `.dql` source, or `null` if the * header is absent. Only the first non-empty line is inspected. */ export declare function readFormatVersion(source: string): number | null; export declare function hasCanonicalHeader(source: string): boolean; /** * Produce the canonical on-disk representation of a `.dql` source: * 1. Drop any existing format header * 2. Reformat via `formatDQL` (deterministic key order, spacing) * 3. Prepend the current format header * * Idempotent: `canonicalize(canonicalize(x)) === canonicalize(x)`. */ export declare function canonicalize(source: string, options?: CanonicalizeOptions): string; /** * True when `canonicalize(source) === source` — i.e. the file is already * byte-identical to its canonical form and needs no rewrite. */ export declare function isCanonical(source: string): boolean; //# sourceMappingURL=index.d.ts.map