import { IActivityHandler, IActivityContext, Deferrable } from "../../IActivityHandler";
import { MapProvider } from "./MapProvider";
/** Defines inputs to the SetImageryLayerInfo activity. */
export interface SetImageryLayerOptionsInputs {
    /** The ID of the imagery layer to be updated. */
    layerId: string | number;
    /** The mosaic rule to apply to the imagery layer. */
    mosaicRule?: __esri.MosaicRule | __esri.MosaicRuleProperties;
    /** The raster function used to render the imagery layer. */
    renderingRule?: __esri.RasterFunction | __esri.RasterFunctionProperties;
    /** The filter used to process the pixel data of the imagery layer. The pixelData object contains a pixelBlock property that gives you access to all of the pixels in the raster on the client. */
    pixelFilter?: Function;
}
/** Defines outputs to the SetImageryLayerInfo activity. */
export interface SetImageryLayerOptionsOutputs {
    /** Indicates the mosaic rule used. */
    mosaicRule?: __esri.MosaicRule;
    /** Indicates the rendering rule used. */
    renderingRule?: __esri.RasterFunction;
    /** Indicates the pixel function used. */
    pixelFilter?: Function;
}
export declare class SetImageryLayerOptions implements IActivityHandler {
    static action: string;
    static suite: string;
    execute(inputs: SetImageryLayerOptionsInputs, context: IActivityContext, type: typeof MapProvider): Deferrable<SetImageryLayerOptionsOutputs>;
}
