import * as inv from 'inversify';
import { InversifyType } from './interfaces';
import { GraphQLOutputType } from 'graphql';
import { ITypeCache } from './interfaces-private';
/**
 * Holds singletons of all builders
 */
export declare class TypeCache extends ITypeCache {
    private container;
    constructor(container: inv.Container);
    buildType<TSource, TContext>(builder: InversifyType<TSource, TContext>): GraphQLOutputType;
    get<T>(ctor: inv.interfaces.Newable<T>): T;
}
