import { ViewStateProps } from "@itwin/core-common";
import { IModelConnection, Tool, ViewState } from "@itwin/core-frontend";
/** Serialize a ViewState to JSON. The returned JSON can later be passed to [deserializeViewState] to reinstantiate the ViewState.
 * @beta
 */
export declare function serializeViewState(view: ViewState): ViewStateProps;
/** Instantiate a ViewState serialized by [serializeViewState].
 * @beta
 */
export declare function deserializeViewState(props: ViewStateProps, iModel: IModelConnection): Promise<ViewState>;
/** Copies a JSON representation of the active viewport's view to the clipboard.
 *  * Arguments:
 *  * `quote`: format the JSON so it can be parsed directly by [ApplyViewTool].
 * @beta
 */
export declare class SaveViewTool extends Tool {
    private _quote;
    static get minArgs(): number;
    static get maxArgs(): number;
    static toolId: string;
    parse(inputArgs: string[]): boolean;
    parseAndRun(...args: string[]): Promise<boolean>;
    run(): Promise<boolean>;
}
/** Given a string containing a JSON representation of a ViewState, applies that ViewState to the active viewport.
 * The JSON string should be enclosed in double quotes and embedded double quote should be duplicated, example:
 * - "{""viewDefinitionProps"":{""classFullName"":""BisCore:SpatialViewDefinition"",""id"":""0x1a""}}"
 * @beta
 */
export declare class ApplyViewTool extends Tool {
    static toolId: string;
    static get maxArgs(): number;
    static get minArgs(): number;
    run(view?: ViewState): Promise<boolean>;
    parseAndRun(...args: string[]): Promise<boolean>;
}
/** Given the Id of a persistent ViewDefinition, applies that view to the active viewport.
 * @beta
 */
export declare class ApplyViewByIdTool extends Tool {
    static toolId: string;
    static get minArgs(): number;
    static get maxArgs(): number;
    parseAndRun(...args: string[]): Promise<boolean>;
    run(viewId?: string): Promise<boolean>;
}
//# sourceMappingURL=SavedViews.d.ts.map