import { BindableProvider } from './bindable-provider'; import { SyncFactory } from './binding'; import { InjectableId, Injector } from './injector'; import { State } from './state'; /** * @inheritDoc * This specialization simply invokes it's configured Factory and provides the result. */ export declare class FactoryBasedProvider extends BindableProvider> { constructor(injector: Injector, id: InjectableId, maker: SyncFactory); /** * @inheritDoc * This specialization invokes it's configured Factory and provides the result (or invokes the error handler if necessary). */ provideAsState(): State; /** * @inheritDoc * This specialization returns undefined anytime 'asyncOnly' is true (since this Provider is by definition synchronous). */ resolveIfSingleton(asyncOnly: boolean): Promise | undefined; }