{"version":3,"file":"type-utils.mjs","sourceRoot":"","sources":["../src/type-utils.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * Updatable field with timestamp tracking for persistence and synchronization.\n */\nexport type UpdatableField<T> = {\n  value: T;\n  lastUpdatedAt: number;\n};\n\n/**\n * Type utility to extract value from UpdatableField or return field as-is.\n */\nexport type ExtractFieldValue<Field> =\n  Field extends UpdatableField<unknown> ? Field['value'] : Field;\n\n/**\n * Type utility to extract plain values from an object with UpdatableField properties.\n */\nexport type ExtractFieldValues<ObjectValue extends Record<string, unknown>> = {\n  [Key in keyof ObjectValue]: ExtractFieldValue<ObjectValue[Key]>;\n};\n"]}