import { WorkbenchHostLaunchRequest } from '@tutti-os/workbench-surface';
import { agentGuiWorkbenchOpenSessionActivationType, AgentGuiWorkbenchProvider } from './types.js';

type AgentGuiWorkbenchLaunchRequestInput = Pick<WorkbenchHostLaunchRequest, "payload" | "typeId"> & {
    dockEntryId?: string | null;
};
declare const agentGuiWorkbenchTypeId = "agent-gui";
declare function agentGuiWorkbenchDockEntryId(provider: AgentGuiWorkbenchProvider): string;
declare function agentGuiWorkbenchInstanceId(provider: AgentGuiWorkbenchProvider): string;
declare function createAgentGuiWorkbenchInstanceId(input: {
    agentSessionId?: string | null;
    provider: AgentGuiWorkbenchProvider;
}): string;
declare function agentGuiWorkbenchProviderFromIdentifier(value: string | null | undefined): AgentGuiWorkbenchProvider | null;
declare function agentGuiWorkbenchProviderFromLaunchRequest(request: AgentGuiWorkbenchLaunchRequestInput): AgentGuiWorkbenchProvider;
declare function createAgentGuiWorkbenchSessionLaunchRequest(input: {
    agentSessionId?: string;
    provider: unknown;
}): {
    dockEntryId: string;
    payload: {
        provider: AgentGuiWorkbenchProvider;
        agentSessionId?: string | undefined;
    };
    reason: "host";
    typeId: string;
};
interface AgentGuiWorkbenchLaunchDescriptor {
    activation: {
        payload: {
            agentSessionId: string;
        };
        type: typeof agentGuiWorkbenchOpenSessionActivationType;
    } | null;
    dockEntryId: string;
    instanceId: string;
    provider: AgentGuiWorkbenchProvider;
    reuseDockEntryNode: boolean;
    targetAgentSessionId: string | null;
}
declare function createAgentGuiWorkbenchLaunchDescriptor(request: AgentGuiWorkbenchLaunchRequestInput): AgentGuiWorkbenchLaunchDescriptor;

export { type AgentGuiWorkbenchLaunchDescriptor, agentGuiWorkbenchDockEntryId, agentGuiWorkbenchInstanceId, agentGuiWorkbenchProviderFromIdentifier, agentGuiWorkbenchProviderFromLaunchRequest, agentGuiWorkbenchTypeId, createAgentGuiWorkbenchInstanceId, createAgentGuiWorkbenchLaunchDescriptor, createAgentGuiWorkbenchSessionLaunchRequest };
