import type { Message } from "../types.js"; import type { ToolDefinition } from "../../tool/index.js"; import { type SkillToolAvailability } from "../../skill/allowed-tools.js"; import { type SkillDelegationOverrides } from "./skill-delegation-overrides.js"; export declare const LOAD_SKILL_TOOL_ID = "load_skill"; export declare const FORM_INPUT_TOOL_ID = "form_input"; export declare const INVOKE_AGENT_TOOL_ID = "invoke_agent"; export declare const SUBMITTED_FORM_INPUT_CONTEXT_KEY = "hasSubmittedFormInputResult"; export declare const INACTIVE_SKILL_TOOL_AVAILABILITY: SkillToolAvailability; export type ActiveSkillState = { activeSkillId: string | undefined; activeSkillToolAvailability: SkillToolAvailability; activeSkillDelegationOverrides: SkillDelegationOverrides | undefined; }; export declare function hydrateActiveSkillStateFromMessages(messages: readonly Message[]): ActiveSkillState; export declare function extractSkillId(result: unknown): string | undefined; export declare function extractSkillToolAvailability(result: unknown): SkillToolAvailability | undefined; /** Apply only a validated body-load response; reference/error results preserve state. */ export declare function applySkillActivationResult(current: ActiveSkillState, result: unknown): ActiveSkillState; export declare function isSubmittedFormInputResult(result: unknown): boolean; export declare function hasSubmittedFormInputResult(messages: readonly Message[]): boolean; export declare function filterToolsAfterSubmittedFormInput(tools: readonly ToolDefinition[], messages: readonly Message[], runtimeContext?: Record, activeSkill?: { id?: string; toolAvailability?: SkillToolAvailability; }): ToolDefinition[]; export type SkillPolicyResult = { allowed: true; } | { allowed: false; error: string; }; export type SkillPolicyOptions = { hasSubmittedFormInput?: boolean; skillToolAvailability?: SkillToolAvailability; activeSkillId?: string; toolInput?: unknown; }; /** Identify a valid skill-body activation call without confusing reference reads for activation. */ export declare function isSkillBodyLoadRequest(toolName: string, input: unknown): boolean; export declare function enforceSkillPolicy(toolName: string, options?: SkillPolicyOptions): SkillPolicyResult; //# sourceMappingURL=skill-policy-enforcement.d.ts.map