import { EventEmitter } from 'events';
import { KrasInjector, KrasRequest, KrasInjectorConfig, KrasConfiguration, KrasResult } from 'kras';
import { Bundler } from '../types';
export interface PiralInjectorConfig extends KrasInjectorConfig {
    bundler: Bundler;
    publicUrl: string;
    feed?: string;
    headers?: Record<string, string>;
}
export default class PiralInjector implements KrasInjector {
    readonly config: PiralInjectorConfig;
    private readonly cbs;
    constructor(options: PiralInjectorConfig, _config: KrasConfiguration, core: EventEmitter);
    private forwardBundlerEvent;
    private setupBundler;
    private teardownBundler;
    get active(): boolean;
    set active(value: boolean);
    get name(): string;
    getOptions(): {};
    setOptions(options: any): void;
    sendContent(content: Buffer | string, type: string, url: string): KrasResult;
    sendIndexFile(target: string, url: string): Promise<KrasResult>;
    sendResponse(path: string, target: string, dir: string, url: string, recursionDepth?: number): Promise<KrasResult>;
    handle(req: KrasRequest): Promise<KrasResult>;
}
