import { IActivityContext, IActivityHandler } from "../../IActivityHandler";
import { ChannelProvider } from "../core/ChannelProvider";
import { MapProvider } from "./MapProvider";
import { JobParameter, Webmap } from "./runUtils";
import { Lookup } from "../../Collections";
/** Defines inputs for the RunPrint activity. */
export interface RunPrintInputs {
    url: string;
    extent?: __esri.Extent;
    scale?: number;
    parameters?: Lookup<any>;
    resultFileName?: string;
}
/** Defines outputs for the RunPrint activity. */
export interface RunPrintOutputs {
    href: string;
}
export declare class RunPrint implements IActivityHandler {
    static action: string;
    static suite: string;
    execute(inputs: RunPrintInputs, context: IActivityContext, channelProviderType: typeof ChannelProvider, mapProviderType: typeof MapProvider): Promise<RunPrintOutputs>;
    /**
     * Gets the authentication token, if any, for the supplied portal.
     * This is a separate method because GVH does not use the
     * IdentityManager to store credentials. The GVH host module
     * overrides this method and uses its own technique.
     * @param portalUrl The URL to the portal.
     */
    protected getAuthenticationToken(portalUrl: string): string;
    getWebmapParameters(mapProviderType: typeof MapProvider, mapName: string, inputScale: number, inputExtent: __esri.Extent, trivia: any): Promise<JobParameter[]>;
    getWebmap(mapProvider: MapProvider, scale?: number, trivia?: any): Promise<Webmap>;
    getWgs84Extent(extent: __esri.Extent): Promise<__esri.Extent>;
    prepareWebmapParameters(mapName: string, webmap: Webmap, scale: number, extent?: __esri.Extent): JobParameter[];
}
