import { z } from 'zod';
import { type ActionId } from './actionIds.js';
import { type ActionSurfaces } from './actionSpecs.js';
import { type ActionUiPlacement } from './actionUiPlacements.js';
declare const ActionSurfaceKeySchema: z.ZodEnum<{
    cli: "cli";
    session_agent: "session_agent";
    mcp: "mcp";
    ui_button: "ui_button";
    ui_slash_command: "ui_slash_command";
    voice_tool: "voice_tool";
    voice_action_block: "voice_action_block";
}>;
export type ActionSurfaceKey = z.infer<typeof ActionSurfaceKeySchema>;
export declare const ACTION_SETTINGS_OPT_IN_PLACEMENTS: readonly ["agent_input_chips"];
declare const ActionSettingsOverrideSchema: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{
    enabled: z.ZodOptional<z.ZodBoolean>;
    enabledPlacements: z.ZodDefault<z.ZodArray<z.ZodEnum<{
        agent_input_chips: "agent_input_chips";
        session_header: "session_header";
        session_info: "session_info";
        session_action_menu: "session_action_menu";
        command_palette: "command_palette";
        slash_command: "slash_command";
        voice_panel: "voice_panel";
        run_list: "run_list";
        run_card: "run_card";
    }>>>;
    disabledSurfaces: z.ZodDefault<z.ZodArray<z.ZodEnum<{
        cli: "cli";
        session_agent: "session_agent";
        mcp: "mcp";
        ui_button: "ui_button";
        ui_slash_command: "ui_slash_command";
        voice_tool: "voice_tool";
        voice_action_block: "voice_action_block";
    }>>>;
    disabledPlacements: z.ZodDefault<z.ZodArray<z.ZodEnum<{
        agent_input_chips: "agent_input_chips";
        session_header: "session_header";
        session_info: "session_info";
        session_action_menu: "session_action_menu";
        command_palette: "command_palette";
        slash_command: "slash_command";
        voice_panel: "voice_panel";
        run_list: "run_list";
        run_card: "run_card";
    }>>>;
    approvalRequiredSurfaces: z.ZodDefault<z.ZodArray<z.ZodEnum<{
        cli: "cli";
        session_agent: "session_agent";
        mcp: "mcp";
        ui_button: "ui_button";
        ui_slash_command: "ui_slash_command";
        voice_tool: "voice_tool";
        voice_action_block: "voice_action_block";
    }>>>;
}, z.core.$strict>>;
export type ActionSettingsOverride = z.infer<typeof ActionSettingsOverrideSchema>;
export declare const ActionsSettingsV1Schema: z.ZodPipe<z.ZodObject<{
    v: z.ZodLiteral<1>;
    actions: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{
        enabled: z.ZodOptional<z.ZodBoolean>;
        enabledPlacements: z.ZodDefault<z.ZodArray<z.ZodEnum<{
            agent_input_chips: "agent_input_chips";
            session_header: "session_header";
            session_info: "session_info";
            session_action_menu: "session_action_menu";
            command_palette: "command_palette";
            slash_command: "slash_command";
            voice_panel: "voice_panel";
            run_list: "run_list";
            run_card: "run_card";
        }>>>;
        disabledSurfaces: z.ZodDefault<z.ZodArray<z.ZodEnum<{
            cli: "cli";
            session_agent: "session_agent";
            mcp: "mcp";
            ui_button: "ui_button";
            ui_slash_command: "ui_slash_command";
            voice_tool: "voice_tool";
            voice_action_block: "voice_action_block";
        }>>>;
        disabledPlacements: z.ZodDefault<z.ZodArray<z.ZodEnum<{
            agent_input_chips: "agent_input_chips";
            session_header: "session_header";
            session_info: "session_info";
            session_action_menu: "session_action_menu";
            command_palette: "command_palette";
            slash_command: "slash_command";
            voice_panel: "voice_panel";
            run_list: "run_list";
            run_card: "run_card";
        }>>>;
        approvalRequiredSurfaces: z.ZodDefault<z.ZodArray<z.ZodEnum<{
            cli: "cli";
            session_agent: "session_agent";
            mcp: "mcp";
            ui_button: "ui_button";
            ui_slash_command: "ui_slash_command";
            voice_tool: "voice_tool";
            voice_action_block: "voice_action_block";
        }>>>;
    }, z.core.$strict>>>>;
}, z.core.$loose>, z.ZodTransform<{
    v: 1;
    actions: Record<"action.spec.search" | "action.spec.get" | "action.options.resolve" | "session.open" | "session.fork" | "session.rollback" | "session.handoff" | "session.spawn_new" | "session.spawn_picker" | "paths.list_recent" | "machines.list" | "servers.list" | "review.engines.list" | "agents.backends.list" | "agents.models.list" | "session.message.send" | "session.stop" | "session.title.set" | "session.model.set" | "session.permission_mode.set" | "session.archive" | "session.unarchive" | "session.status.get" | "session.history.get" | "session.wait.idle" | "review.start" | "subagents.plan.start" | "subagents.delegate.start" | "voice_agent.start" | "execution.run.start" | "execution.run.list" | "execution.run.get" | "execution.run.send" | "execution.run.stop" | "execution.run.action" | "execution.run.wait" | "session.target.primary.set" | "session.target.tracked.set" | "session.list" | "session.activity.get" | "session.messages.recent.get" | "session.permission.respond" | "session.user_action.answer" | "session.mode.set" | "ui.voice_global.reset" | "ui.voice_agent.teleport" | "memory.search" | "memory.get_window" | "memory.ensure_up_to_date" | "prompt_doc.update" | "prompt_bundle.update" | "prompt_asset.export" | "prompt_registry.install" | "approval.request.create" | "approval.request.decide", {
        enabledPlacements: ("agent_input_chips" | "session_header" | "session_info" | "session_action_menu" | "command_palette" | "slash_command" | "voice_panel" | "run_list" | "run_card")[];
        disabledSurfaces: ("cli" | "session_agent" | "mcp" | "ui_button" | "ui_slash_command" | "voice_tool" | "voice_action_block")[];
        disabledPlacements: ("agent_input_chips" | "session_header" | "session_info" | "session_action_menu" | "command_palette" | "slash_command" | "voice_panel" | "run_list" | "run_card")[];
        approvalRequiredSurfaces: ("cli" | "session_agent" | "mcp" | "ui_button" | "ui_slash_command" | "voice_tool" | "voice_action_block")[];
        enabled?: boolean | undefined;
    }>;
}, {
    [x: string]: unknown;
    v: 1;
    actions: Record<string, {
        enabledPlacements: ("agent_input_chips" | "session_header" | "session_info" | "session_action_menu" | "command_palette" | "slash_command" | "voice_panel" | "run_list" | "run_card")[];
        disabledSurfaces: ("cli" | "session_agent" | "mcp" | "ui_button" | "ui_slash_command" | "voice_tool" | "voice_action_block")[];
        disabledPlacements: ("agent_input_chips" | "session_header" | "session_info" | "session_action_menu" | "command_palette" | "slash_command" | "voice_panel" | "run_list" | "run_card")[];
        approvalRequiredSurfaces: ("cli" | "session_agent" | "mcp" | "ui_button" | "ui_slash_command" | "voice_tool" | "voice_action_block")[];
        enabled?: boolean | undefined;
    }>;
}>>;
export type ActionsSettingsV1 = z.infer<typeof ActionsSettingsV1Schema>;
export type ActionEnablementContext = Readonly<{
    surface?: keyof ActionSurfaces | null;
    placement?: ActionUiPlacement | null;
}>;
export declare function isActionSettingsOptInPlacement(placement: ActionUiPlacement): boolean;
export declare function isActionEnabledByActionsSettings(actionId: ActionId, settings: ActionsSettingsV1, ctx?: ActionEnablementContext): boolean;
export {};
//# sourceMappingURL=actionSettings.d.ts.map