/** Entity type record — dynamic, derived from documents.type (builtin:3.0) */ export interface EntityType { name: string; } /** Entity record */ export interface Entity { id: string; type_name: string; properties: string; created_at: string; updated_at: string; } /** Relation type record */ export interface RelationType { name: string; description: string | null; from_types: string; to_types: string; cardinality: string | null; inverse_of: string | null; created_at: string; updated_at: string; } /** Relation record */ export interface Relation { id: number; from_id: string; rel_type: string; to_id: string; properties: string; created_at: string; updated_at: string; } /** Cardinality values */ export type Cardinality = 'one_to_one' | 'one_to_many' | 'many_to_one' | 'many_to_many'; /** Schema metadata record */ export interface SchemaMeta { id?: number; source_file: string; version: string; bootstrapped_at: string; checksum: string; } /** Bootstrap result */ export interface BootstrapResult { entityTypesAdded: number; relationTypesAdded: number; skippedExisting: number; } /** Entity query options */ export interface EntityQueryOptions { typeName?: string; where?: Record; limit?: number; offset?: number; } /** Relation query options */ export interface RelationQueryOptions { entityId: string; relType?: string; direction?: 'outgoing' | 'incoming' | 'both'; limit?: number; offset?: number; } /** Validation result */ export interface ValidationResult { valid: boolean; violations: Violation[]; } /** Violation record */ export interface Violation { type: 'cardinality' | 'dangling' | 'type_constraint'; relationId: number; fromId: string; relType: string; toId: string; message: string; } /** Export format */ export type ExportFormat = 'jsonl' | 'csv' | 'json'; /** Graph export data */ export interface GraphExportData { entityTypes: EntityType[]; relationTypes: RelationType[]; entities: Entity[]; relations: Relation[]; } //# sourceMappingURL=entity.d.ts.map