import type { RepairChange } from "./types.ts"; export type ObjectLocationSelector = `/${string}` | ""; export type Preprocessor = AliasPreprocessor | FieldPreprocessor | StructuralPreprocessor; export interface AliasPreprocessor { kind: "alias"; selector: ObjectLocationSelector; aliases: readonly string[]; accepts?: "string" | "number" | "boolean" | "array" | "object"; emptyEquivalentToMissing?: boolean; } export interface FieldPreprocessor { kind: "filesystem-path" | "filesystem-path-array" | "glob" | "string-or-array" | "scalar" | "anchor-bleed" | "grammar-tokens"; selector: ObjectLocationSelector; scalarType?: "string" | "number" | "boolean"; modelFamilies?: readonly RegExp[]; } export interface StructuralPreprocessor { kind: "structural"; selector: ObjectLocationSelector; ruleId: string; apply: (value: unknown) => { value: unknown; note: string; } | undefined; } export declare function preprocessInput(options: { input: unknown; toolName: string; preprocessors: readonly Preprocessor[]; modelId?: string; allowValidValueTransforms: boolean; }): { value: unknown; changes: RepairChange[]; observations: string[]; }; //# sourceMappingURL=preprocess.d.ts.map