import { EntityConstructor, IBasicI18NContract, UnnamedPartial } from "./base"; export declare const COMPONENT_DEFINE = "ambjs::component_define"; export declare function defineComponent(target: EntityConstructor, metadata: IComponentContract): void; export declare function resolveComponent(target: EntityConstructor, defaults?: Partial): IComponentContract; export interface IComponentContract extends IBasicI18NContract { name: string | null; displayName: string | null; dependencies: { [name: string]: string | string[]; }; } export declare function Component(name: string): ClassDecorator; export declare function Component(params: UnnamedPartial): ClassDecorator;