import type { CSSValueAST, BuildVarAst } from './ast-types.ts'; import type { ParseResults } from './value-parser.ts'; export declare function defineProperty(_config: { name: string; syntax: string; subSyntax?: Record; subProperties?: Record>; topLevelCommaSeparation?: TOP_COMMA; formats?: Record; classifications?: Record boolean; cssProperty?: ReturnType; } : { match?: MatchClassification; syntax?: string; cssProperty?: ReturnType; })>; }): { validate: (ast: CSSValueAST[], options?: ActionParams) => [...errors: string[]]; getFormat: (ast: CSSValueAST[], options?: ActionParams) => FORMATS; classify: (ast: CSSValueAST[], options?: ActionParams & { deep?: boolean; ignoreComments?: boolean; }) => TOP_COMMA extends true ? Record[] : Record; }; export declare namespace defineProperty { var errors: { unexpectedType: (node: CSSValueAST, expectedType: string) => string; unexpectedComma: () => string; }; } export interface ActionParams { cssVars?: Record[]>; resolveBuildVar?: (node: BuildVarAst) => CSSValueAST[]; } type MatchClassification = (node: CSSValueAST, info: { index: number; indexOfType: number; amountOfType: number; }) => boolean; type Classification = { value: CSSValueAST[]; resolved: { origin: ParseResults; nodes: CSSValueAST[]; }[][]; isProperty: boolean; }; export {}; //# sourceMappingURL=define-property.d.ts.map