UNPKG

tsioc

Version:

tsioc is AOP, Ioc container, via typescript decorator

26 lines (25 loc) 893 B
import { PropertyMetadata } from '../metadatas/index'; import { MetadataAdapter, MetadataExtends } from './DecoratorFactory'; import { Token } from '../../types'; /** * property decorator. * * @export * @interface IPropertyDecorator */ export interface IPropertyDecorator<T extends PropertyMetadata> { (provider: Token<any>): PropertyDecorator; (metadata?: T): PropertyDecorator; (target: object, propertyKey: string | symbol): void; } /** * create property decorator. * * @export * @template T metadata type. * @param {string} name decorator name. * @param {MetadataAdapter} [adapter] metadata adapter * @param {MetadataExtends<T>} [metadataExtends] add extents for metadata. * @returns */ export declare function createPropDecorator<T extends PropertyMetadata>(name: string, adapter?: MetadataAdapter, metadataExtends?: MetadataExtends<T>): IPropertyDecorator<T>;