react-qml
Version:
36 lines (35 loc) • 1.37 kB
TypeScript
export declare type RegistryComponentMetadata = {
defaultProp: string;
} & {
[key: string]: any;
};
export declare type RegistryComponent = {
component: Qml.QmlComponent;
metadata: RegistryComponentMetadata;
};
export declare type ComponentRegistry = {
[name: string]: RegistryComponent;
};
export declare type RawComponent = {
rawContent: string;
metadata: RegistryComponentMetadata;
};
export declare type RawRegistry = {
[name: string]: RawComponent;
};
interface Registry {
registerComponent(name: string, component: Qml.QmlComponent, metadata: RegistryComponentMetadata): void;
getComponent(name: string): RegistryComponent | undefined;
registerRawComponent(name: string, rawContent: string, metadata: RegistryComponentMetadata): void;
getRawComponent(name: string): RawComponent | undefined;
}
declare class RegistryImpl implements Registry {
private componentRegistry;
private rawRegistry;
registerComponent(name: string, component: Qml.QmlComponent, metadata?: RegistryComponentMetadata): void;
getComponent(name: string): RegistryComponent | undefined;
registerRawComponent(name: string, rawContent: string, metadata?: RegistryComponentMetadata): void;
getRawComponent(name: string): RawComponent | undefined;
}
export declare const AppRegistry: RegistryImpl;
export default AppRegistry;