import { PrimitiveTypeAssertionConstraints, RepeatedAssertionConstraints, ErrorMessages, TypeAssertion } from './types/tynder-schema-types'; export * from './types/tynder-schema-types'; export declare type RecursivePartial = { [P in keyof T]?: T[P] extends (infer U)[] ? RecursivePartial[] : T[P] extends object ? RecursivePartial : T[P]; }; export declare type TypeAssertionErrorMessageConstraints = Partial & { pattern: string; }>; export interface TypeAssertionErrorMessage { code: string; message: string; dataPath: string; constraints: TypeAssertionErrorMessageConstraints; value?: any; } export interface Stereotype { tryParse: (value: any) => { value: any; } | null; evaluateFormula: (valueOrFormula: any) => any; compare: (a: any, b: any) => number; doCast: boolean; } export declare type CustomConstraint = (data: any, args: any) => boolean; export interface CustomConstraintInfo { kinds?: Array; check: CustomConstraint; } export interface ValidationContext { checkAll?: boolean; noAdditionalProps?: boolean; errorMessages?: ErrorMessages; mapper?: (value: any, ty: TypeAssertion) => any; errors: TypeAssertionErrorMessage[]; typeStack: Array; recordTypeFieldValidated?: boolean; schema?: TypeAssertionMap; stereotypes?: Map; customConstraints?: Map; } export interface TypeAssertionSetValue { ty: TypeAssertion; exported: boolean; isDeclare: boolean; resolved: boolean; } export declare type TypeAssertionMap = Map; export interface SymbolResolverOperators { [propName: string]: (...args: Array) => TypeAssertion; } export interface ResolveSymbolOptions { isDeserialization?: boolean; } export interface SymbolResolverContext extends ResolveSymbolOptions { nestLevel: number; symlinkStack: string[]; operators?: SymbolResolverOperators; } export interface CodegenContext { nestLevel: number; schema?: TypeAssertionMap; }