export type TSV = `tsv:${number}-${string}-${number}`; export type ArtifactType = 'config' | 'schema' | 'module' | 'event_handler' | 'effect' | 'route' | 'data' | 'plugin'; export type VersionStatus = 'hot' | 'warm' | 'cold'; export interface TimescapeArtifact { id: string; type: ArtifactType; version: TSV; hash: string; metadata?: { dbSchema?: { version: string; migrations: string[]; rollback: string[]; compatibleWith?: string[]; }; [key: string]: any; }; } export interface VersionInfo { tsv: TSV; timestamp: number; hash: string; status: VersionStatus; requestCount: number; lastAccessed: number; tags: string[]; dbSchemaVersion?: string; } export interface VersionTimeline { handlerPath: string; versions: VersionInfo[]; } export interface VersionTag { label: string; tsv: TSV; createdAt: number; createdBy: string; } export type { TransformerPair, TransformFunction, TransformResult, ChainOptions } from './transformer.js'; export interface ChangeLogItem { id: TSV; timestamp: number; type: ArtifactType; actor: string; payload: any; diff?: any; parents: TSV[]; } export interface VersionRegistryState { modules: Record; schemas: Record; config: TSV | null; routes: Record; events: Record; effects: Record; handlers: Record; tags: Record; activeVersions: Set; coldVersions: Set; } export interface Snapshot { id: string; timestamp: number; type: 'light' | 'heavy'; registryState: VersionRegistryState; artifacts?: Record; } //# sourceMappingURL=types.d.ts.map