import { BCMSProp, BCMSTypeConverterResultItem, BCMSTypeConverterTarget } from '@bcms/types'; interface BCMSTypeConverterPropsResult { props: Array<{ name: string; type: string; required: boolean; array: boolean; }>; additional: string[]; imports: BCMSImports; } interface ImportMetadata { name: string; type: 'entry' | 'group' | 'widget' | 'enum'; props?: BCMSProp[]; enumItems?: string[]; } declare class BCMSImports { state: { [path: string]: { [name: string]: { metadata?: ImportMetadata; }; }; }; set(name: string, path: string, metadata?: ImportMetadata): void; addMetadata(name: string, path: string, metadata: ImportMetadata): void; fromImports(imports: BCMSImports): void; flatten(): string[]; flattenForJSDoc(): string[]; } export declare class BCMSTypeConverter { static bcmsPropTypeToConvertType(prop: BCMSProp, conversionType?: 'js' | 'gql'): Promise<{ type: string; imports: BCMSImports; additional: string[]; }>; static toConvertProps({ props, converterType, }: { props: BCMSProp[]; converterType?: 'js' | 'gql'; }): Promise; static typescript(data: BCMSTypeConverterTarget[]): Promise; static jsDoc(data: BCMSTypeConverterTarget[]): Promise; static gql(data: BCMSTypeConverterTarget[]): Promise; } export {};