export type LyraFileTypeIcon='file'|'pdf'|'word'|'spreadsheet'|'presentation'|'text'|'code'|'archive'|'image'|'audio'|'video';export type LyraFileTypeCategory='document'|'spreadsheet'|'presentation'|'image'|'audio'|'video'|'archive'|'code'|'generic';export interface LyraFileTypeMetadata{readonly label:string;readonly description?:string;readonly icon:LyraFileTypeIcon;readonly category:LyraFileTypeCategory;readonly extensions?:readonly string[];}export interface LyraFileTypeMetadataEntry{readonly mimeTypes:string|readonly string[];readonly metadata:LyraFileTypeMetadata;}export interface LyraResolvedFileTypeMetadata extends LyraFileTypeMetadata{ /** Built-ins use localized component strings; consumer records remain verbatim. */ readonly provenance:'builtin'|'consumer';}export interface LyraFileTypeMetadataRegistry{resolve(mimeType:string,fileName?:string):LyraResolvedFileTypeMetadata;} /** * Creates an immutable, instance-injectable metadata registry. Built-ins are always present; * consumer entries are applied in order with last-entry-wins MIME and extension collisions. * Replacing a MIME atomically releases extension aliases owned by its previous record. */ export declare function createFileTypeMetadataRegistry(entries?:readonly LyraFileTypeMetadataEntry[]):LyraFileTypeMetadataRegistry;export declare const defaultFileTypeMetadataRegistry:LyraFileTypeMetadataRegistry; /** Resolves through the immutable built-in registry. For custom records, construct and inject a registry. */ export declare function getFileTypeMetadata(mimeType:string,fileName?:string):LyraResolvedFileTypeMetadata;