import type { PropTransform } from '../interfaces/document'; export interface PropOptions { /** Whether the field is required. Defaults to `true`; set `false` for optional fields. */ required?: boolean; /** A literal default, or a zero-arg factory invoked per write when the field is missing. */ default?: unknown; /** Enum object the value is drawn from (passed through to hydration/metadata). */ enum?: object; /** Shorthand for a unique single-field index on this property. */ unique?: boolean; /** Shorthand for a single-field index (`true`/`1` ascending, `-1` descending). */ index?: boolean | 1 | -1; /** Value transforms applied on write (`to`) and read (`from`). */ transform?: PropTransform; /** Explicit design type, when `emitDecoratorMetadata` cannot infer it. */ type?: unknown; } /** * Declare a persisted field. Captures reflected type + options into the owning * document's `DocumentMetadata.props`, which drives hydration (6a), validation * (6b), and derived indexes. */ export declare const Prop: (options?: PropOptions) => PropertyDecorator; //# sourceMappingURL=prop.d.ts.map