/** * Resolve Change Label * * Turns a change entry's raw componentId/propPath into the label an editor * would recognize on the canvas, reading the same config-driven labels * outlineTree.ts uses for the block outline. A structural addition has no * component in this document to read a type off, so its type is recovered * from the slot id itself: Puck's default id shape is `${type}-${uuid}`. */ interface FieldConfig { label?: string; type?: string; objectFields?: Record; arrayFields?: Record; } interface ComponentConfig { label?: string; fields?: Record; } export type FieldPresentation = 'default' | 'image' | 'richtext'; export interface ChangeLabelConfig { components?: Record; root?: { fields?: Record; }; } /** A human label for the block a structural or field-level change concerns. */ export declare function resolveComponentLabel(config: ChangeLabelConfig, componentId: string, componentType?: string): string; /** A human label for the specific field a prop-level change concerns. */ export declare function resolveFieldLabel(config: ChangeLabelConfig, componentId: string, propPath: string, componentType?: string): string; /** The declared Puck field type at a change entry's JSON Pointer. */ export declare function resolveFieldType(config: ChangeLabelConfig, componentId: string, propPath: string, componentType?: string): string | undefined; /** The value presentation implied by a field's type and author-facing semantics. */ export declare function resolveFieldPresentation(config: ChangeLabelConfig, componentId: string, propPath: string, componentType?: string): FieldPresentation; export {};