import type { TimeToLiveConfig } from '../config/time-to-live.js'; import type { ModelComponent } from '../validation/validation-context.js'; import { ValidationContext } from '../validation/validation-context.js'; import { FieldPath } from './field-path.js'; import type { Field } from './field.js'; import type { Model } from './model.js'; import type { RootEntityType } from './root-entity-type.js'; import type { ScalarType } from './scalar-type.js'; export declare class TimeToLiveType implements ModelComponent { readonly input: TimeToLiveConfig; readonly model: Model; readonly cascadeFields: ReadonlyArray; readonly rootEntityType: RootEntityType | undefined; constructor(input: TimeToLiveConfig, model: Model); validate(context: ValidationContext): void; private validateCascadeFields; private validateCascadeField; get path(): ReadonlyArray | undefined; get fieldType(): ScalarType | undefined; get expireAfterDays(): number; private get dateFieldPath(); private traversePath; }