import { TypeMetadata, MetadataExtends, ArgsIteratorAction, Type } from '@tsdi/ioc'; import { ModelMetadata } from '../metadata'; /** * model decorator type define. * * @export * @interface IModelDecorator * @template T */ export interface IModelDecorator { (dbtable?: string): ClassDecorator; /** * model decorator setting with metadata map. * * @param {T} [metadata] metadata map. */ (metadata?: T): ClassDecorator; /** * model with out metadata. */ (target: Type): void; } /** * create filed decorator. * * @export * @template T * @param {string} [modelType] * @param {ArgsIteratorAction[]} [actions] * @param {MetadataExtends} [metaExtends] * @returns {IFiledDecorator} */ export declare function createModelDecorator(modelType?: string, actions?: ArgsIteratorAction[], metaExtends?: MetadataExtends): IModelDecorator; export declare const Model: IModelDecorator;