/** @packageDocumentation
 * @module RpcInterface
 */
import { IModelConnectionProps, IModelRpcProps, SnapshotOpenOptions } from "../IModel";
import { RpcInterface } from "../RpcInterface";
import { RpcRoutingToken } from "./core/RpcRoutingToken";
/** The RPC interface for working with *snapshot* iModels.
 * This interface is intended for desktop and mobile products. Web products are discouraged from registering this interface.
 * @internal
 * @deprecated in 5.0 - will not be removed until after 2026-06-13. Check [[IpcAppFunctions]] or [[CheckpointConnection]] for replacements.
 */
export declare abstract class SnapshotIModelRpcInterface extends RpcInterface {
    /** Returns the SnapshotIModelRpcInterface client instance for the frontend. */
    static getClient(): SnapshotIModelRpcInterface;
    /** Returns the SnapshotIModelRpcInterface client instance for a custom RPC routing configuration. */
    static getClientForRouting(token: RpcRoutingToken): SnapshotIModelRpcInterface;
    /** The immutable name of the interface. */
    static readonly interfaceName = "SnapshotIModelRpcInterface";
    /** The version of the interface. */
    static interfaceVersion: string;
    /**
     * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use [[IpcAppFunctions.openSnapshot]] in IPC applications, no replacement for Web applications.
     */
    openFile(_filePath: string, _opts?: SnapshotOpenOptions): Promise<IModelConnectionProps>;
    /**
     * @deprecated in 4.10 - will not be removed until after 2026-06-13. Use [[CheckpointConnection.openRemote]].
     */
    openRemote(_key: string, _opts?: SnapshotOpenOptions): Promise<IModelConnectionProps>;
    /**
     * @deprecated in 5.0 - will not be removed until after 2026-06-13. Use [[IpcAppFunctions.closeIModel]] in IPC applications, no replacement for Web applications.
     */
    close(_iModelRpcProps: IModelRpcProps): Promise<boolean>;
}
//# sourceMappingURL=SnapshotIModelRpcInterface.d.ts.map