Interface IResource<TConfig, TValue, TDependencies>

interface IResource<TConfig, TValue, TDependencies> {
    dependencies?: TDependencies | ((config: TConfig) => TDependencies);
    dispose?: ((value: TValue, config: TConfig, dependencies: DependencyValuesType<TDependencies>) => Promise<TValue>);
    events: {
        afterInit: IEventDefinition<AfterInitEventPayload<TConfig, TValue>>;
        beforeInit: IEventDefinition<BeforeInitEventPayload<TConfig>>;
        onError: IEventDefinition<OnErrorEventPayload>;
    };
    id: string;
    init?: ((config: TConfig, dependencies: DependencyValuesType<TDependencies>) => Promise<TValue>);
    meta?: IResourceMeta;
    middleware: IMiddlewareDefinition<any>[];
    overrides: (
        | IResource<void, any, any>
        | ITask<any, any, {}, undefined>
        | IMiddleware<any>
        | IResourceWithConfig<any, any, any>)[];
    register: RegisterableItems<any>[] | ((config: TConfig) => RegisterableItems<any>[]);
    with(config: TConfig): IResourceWithConfig<TConfig, TValue, TDependencies>;
}

Type Parameters

Hierarchy (view full)

Properties

dependencies?: TDependencies | ((config: TConfig) => TDependencies)
dispose?: ((value: TValue, config: TConfig, dependencies: DependencyValuesType<TDependencies>) => Promise<TValue>)

Clean-up function for the resource. This is called when the resource is no longer needed.

Type declaration

These events are automatically populated after the task has been defined.

id: string
init?: ((config: TConfig, dependencies: DependencyValuesType<TDependencies>) => Promise<TValue>)
middleware: IMiddlewareDefinition<any>[]
overrides: (
    | IResource<void, any, any>
    | ITask<any, any, {}, undefined>
    | IMiddleware<any>
    | IResourceWithConfig<any, any, any>)[]
register: RegisterableItems<any>[] | ((config: TConfig) => RegisterableItems<any>[])

Methods