import { AdRendererRequest, AdRendererBaseInstanceContext, BasePlugin, AdRendererPluginResponse, PluginProperty, DisplayAd } from "../../../index";
export declare abstract class AdRendererBasePlugin<T extends AdRendererBaseInstanceContext> extends BasePlugin {
    instanceContext: Promise<T>;
    displayContextHeader: string;
    fetchDisplayAd(displayAdId: string): Promise<DisplayAd>;
    fetchDisplayAdProperties(displayAdId: string): Promise<PluginProperty[]>;
    getEncodedClickUrl(redirectUrls: string[]): string;
    protected instanceContextBuilder(creativeId: string): Promise<T>;
    protected abstract onAdContents(request: AdRendererRequest, instanceContext: T): Promise<AdRendererPluginResponse>;
    private initAdContentsRoute();
    constructor();
}
