import { type AgentSession, FooterComponent, type ReadonlyFooterDataProvider } from "@sheason/pi-coding-agent";
import type { RemoteInteractiveView } from "./remote-interactive-view.js";
export declare class RemoteSessionAdapter {
    private view;
    private readonly state;
    readonly session: AgentSession;
    constructor();
    setView(view: RemoteInteractiveView): AgentSession;
}
type MutableFooterDataProvider = ReadonlyFooterDataProvider & {
    setCwd(cwd: string): void;
    setAvailableProviderCount(count: number): void;
    setExtensionStatus(key: string, text: string | undefined): void;
};
export declare class RemoteFooterDataProvider implements MutableFooterDataProvider {
    private availableProviderCount;
    private readonly extensionStatuses;
    private cwd;
    getGitBranch(): string | null;
    getExtensionStatuses(): ReadonlyMap<string, string>;
    getAvailableProviderCount(): number;
    onBranchChange(): () => void;
    setCwd(cwd: string): void;
    setAvailableProviderCount(count: number): void;
    setExtensionStatus(key: string, text: string | undefined): void;
}
export declare function createRemoteFooterComponent(): {
    footer: FooterComponent;
    session: RemoteSessionAdapter;
    footerData: RemoteFooterDataProvider;
};
export {};
//# sourceMappingURL=remote-footer-adapter.d.ts.map