import { PatchableDecoder } from './AutoEncoder.js'; export declare class Field { optional: boolean; nullable: boolean; decoder: PatchableDecoder; /** * Set to true if you want to force encoding of the field, even for default values * when saved to Database medium */ queryable: boolean; /** * Executed after decoding / before encoding to convert to a correct internal value (= latest version) */ upgrade?: (old: any) => any; downgrade?: (newer: any) => any; upgradePatch?: (old: any) => any; downgradePatch?: (newer: any) => any; /** * Version in which this field was added */ version: number; /** * Name of the property where to save / get this value */ property: string; /** * Name in the encoded version */ field: string; /** * Name in the encoded version */ fieldAlias?: string; /** * Internal value for unsupported versions */ defaultValue?: () => any; isDefaultValue?: (val: unknown) => boolean; /** * Internal value for unsupported versions */ patchDefaultValue?: () => any; /** * Optimization during encoding/decoding. * Whether there is a newer field with a higher version for this property */ hasNewerField: boolean; getOptionalClone(): Field; } //# sourceMappingURL=Field.d.ts.map