/**
 * @module        acp-permissions
 * @description   ACP 权限解析器，三层决策链自动审批工具调用权限
 *
 * @author        eddy
 * @organization  wykj
 * @ownership     wykj/eddy
 *
 * @created       2026-03-31
 * @updated       2026-03-31
 *
 * @role          adapter
 * @layer         provider
 * @boundedContext acp
 */
export type PermissionMode = 'approve-all' | 'approve-reads' | 'deny-all';
interface PermissionParams {
    toolCall: {
        toolCallId?: string;
        title?: string;
        kind?: string;
        status?: string;
    };
    options: ReadonlyArray<{
        optionId: string;
        kind: string;
        name?: string;
    }>;
}
interface PermissionResponse {
    outcome: {
        outcome: 'selected';
        optionId: string;
    } | {
        outcome: 'cancelled';
    };
}
/** Infer tool kind from toolCall.kind or title keywords (aligned with acpx). */
export declare function inferToolKind(params: Pick<PermissionParams, 'toolCall'>): string | undefined;
export declare function resolvePermission(params: PermissionParams, mode: PermissionMode): PermissionResponse;
export {};
//# sourceMappingURL=acp-permissions.d.ts.map