import type { OpenFin } from '@openfin/core';
import type { HomeVpwChannelProvider } from './protocol';
export declare class HomeVpwProvider {
    #private;
    static getOverrideConstructor(channel: HomeVpwChannelProvider): new () => HomeVpwProvider;
    static instance: HomeVpwProvider | null;
    constructor(channel: HomeVpwChannelProvider);
    get ready(): Promise<void>;
    private ensureClientConnected;
    show(): Promise<void>;
    showWhenReady(): Promise<void>;
    hide(): Promise<void>;
    shutdown(): Promise<void>;
    getWindowSync(): OpenFin.Window;
    dispatchSearchInvoked(query?: string, providerId?: string, context?: Record<string, unknown>): Promise<void>;
    dispatchSetSearchQuery(query: string, providerId?: string, context?: Record<string, unknown>): Promise<void>;
    private registerChannelActions;
}
export type HomeVpwConstructorOverride = (Base: new () => HomeVpwProvider) => new () => HomeVpwProvider;
