/** * System Fields Configuration * * These fields are implicit in ALL entities and should NEVER be declared * in entity field configurations. They are: * - Always present in database tables * - Always returned in API responses * - Always available for sorting * - Shown in metadata sections of detail views * - Never shown in forms (managed by database) */ import type { EntityField } from './types'; /** * All system field names that are implicit in every entity */ export declare const SYSTEM_FIELD_NAMES: readonly ["id", "createdAt", "updatedAt", "userId", "teamId"]; export type SystemFieldName = (typeof SYSTEM_FIELD_NAMES)[number]; /** * Fields that are implicitly available for sorting even if not in config */ export declare const IMPLICIT_SORTABLE_FIELDS: readonly ["createdAt", "updatedAt"]; export type ImplicitSortableField = (typeof IMPLICIT_SORTABLE_FIELDS)[number]; /** * Virtual field definitions for createdAt/updatedAt * Used by frontend components to render these fields consistently */ export declare const SYSTEM_TIMESTAMP_FIELDS: EntityField[]; /** * Check if a field name is a system field */ export declare function isSystemField(fieldName: string): boolean; /** * Check if a field name is an implicit timestamp field */ export declare function isImplicitTimestampField(fieldName: string): boolean; /** * Get system timestamp field definition by name * Returns the field definition if found, null otherwise */ export declare function getSystemTimestampField(fieldName: string): EntityField | null; /** * Builder-specific system fields (conditional) * These are only valid for entities with builder.enabled = true */ export declare const BUILDER_SYSTEM_FIELD_NAMES: readonly ["blocks"]; export type BuilderSystemFieldName = (typeof BUILDER_SYSTEM_FIELD_NAMES)[number]; /** * Virtual field definition for blocks (builder entities only) * This field is automatically available for entities with builder.enabled = true */ export declare const BUILDER_BLOCKS_FIELD: EntityField; /** * Check if a field is a builder-specific system field */ export declare function isBuilderSystemField(fieldName: string): boolean; //# sourceMappingURL=system-fields.d.ts.map