@dipscope/type-manager
Version:
Transform JSON strings or plain objects into JS class instances.
46 lines • 1.75 kB
TypeScript
import { InjectMetadata } from '../inject-metadata';
import { InjectState } from '../inject-state';
import { Optional } from '../optional';
import { TypeArgument } from '../type-argument';
import { TypeMetadata } from '../type-metadata';
/**
* Represents resolved inject state.
*
* @type {ResolvedInjectState<TDeclaringObject, TObject>}
*/
export declare class ResolvedInjectState<TDeclaringObject, TObject> implements InjectState<TDeclaringObject, TObject> {
/**
* Inject metadata for which state is defined.
*
* @type {InjectMetadata<TDeclaringObject, TObject>}
*/
readonly injectMetadata: InjectMetadata<TDeclaringObject, TObject>;
/**
* Parameter key to inject within a type context.
*
* @type {Optional<string>}
*/
readonly key: Optional<string>;
/**
* Type argument of the injection.
*
* @type {TypeArgument<TObject>}
*/
readonly typeArgument: TypeArgument<TObject>;
/**
* Type metadata of the injection.
*
* @type {TypeMetadata<TObject>}
*/
readonly typeMetadata: TypeMetadata<TObject>;
/**
* Constructor.
*
* @param {InjectMetadata<TDeclaringObject, TObject>} injectMetadata Inject metadata for which state is defined.
* @param {Optional<string>} key Parameter key to inject within a type context.
* @param {TypeArgument<TObject>} typeArgument Type argument of the injection.
* @param {TypeMetadata<TObject>} typeMetadata Type metadata of the injection.
*/
constructor(injectMetadata: InjectMetadata<TDeclaringObject, TObject>, key: Optional<string>, typeArgument: TypeArgument<TObject>, typeMetadata: TypeMetadata<TObject>);
}
//# sourceMappingURL=resolved-inject-state.d.ts.map