import type { IContextIopa, IContextIopaLegacy, IFactory, IReplyIopa } from '@iopa/types';
import FreeList from '../util/freelist';
import Factory from './factory-core';
export default class FactoryEdge<C, T extends IContextIopa<C> & {
    init: Function;
    dispose?: Function;
}> extends Factory<C, T> implements IFactory<C, T> {
    protected _factoryResponse: FreeList<IReplyIopa>;
    constructor(name?: string, size?: number, factory?: () => T);
    createContext(urlOrRequest?: string | Request, options?: Partial<IContextIopaLegacy<C>>): T;
    protected _dispose(context: T & IContextIopa<C> & {
        init: Function;
        dispose?: Function;
    }): void;
}
//# sourceMappingURL=factory-edge.d.ts.map