/**
 * 보안 정책 기능이 사용하는 순수 정책 정의와 해석 규칙을 담당한다.
 * 설정 저장 위치나 런타임 실행 흐름과 분리해 모드 정의, 옵션 설명, 검사 범위 계산만 여기서 유지한다.
 */
import type { SecurityPolicyMode, SecurityPolicyState, SecurityValidationOptions } from '../../../platform/types/index';
/**
 * 보안 정책 옵션의 사용자 표시 구조다.
 */
export type SecurityPolicyOption = {
    /**
     * 도움말과 자동완성에 노출할 설명 문구다.
     */
    description: string;
    /**
     * 선택 UI에 표시할 라벨이다.
     */
    label: string;
    /**
     * mode 값이다.
     */
    mode: SecurityPolicyMode;
    /**
     * 목록에서 보여줄 한 줄 요약이다.
     */
    summary: string;
};
/**
 * @description
 * 보안 정책 파일이 없거나 값이 비정상일 때 사용할 기본 정책을 반환한다.
 * @returns 기본 보안 정책 상태
 */
export declare function createDefaultSecurityPolicy(): SecurityPolicyState;
/**
 * @description
 * 보안 정책 모드가 허용된 값인지 검사한다.
 * @param value 검사할 원본 값
 * @returns 허용된 보안 정책 모드 여부
 */
export declare function isSecurityPolicyMode(value: unknown): value is SecurityPolicyMode;
/**
 * @description
 * 보안 정책 모드에 대응하는 사용자 표시용 정보를 반환한다.
 * @param mode 조회할 정책 모드
 * @returns 대응하는 옵션 정보
 */
export declare function getSecurityPolicyOption(mode: SecurityPolicyMode): SecurityPolicyOption;
/**
 * @description
 * 선택 UI에 사용할 전체 보안 정책 옵션 목록을 반환한다.
 * @returns 보안 정책 옵션 목록
 */
export declare function listSecurityPolicyOptions(): SecurityPolicyOption[];
/**
 * @description
 * 보안 정책 모드를 사람이 읽기 쉬운 라벨로 변환한다.
 * @param mode 변환할 정책 모드
 * @returns 사용자 표시용 라벨
 */
export declare function describeSecurityPolicyMode(mode: SecurityPolicyMode): string;
/**
 * @description
 * 현재 보안 정책이 실제 차단 기능을 사용하는 상태인지 반환한다.
 * @param mode 검사할 정책 모드
 * @returns 보안 정책 활성 여부
 */
export declare function isSecurityPolicyEnabled(mode: SecurityPolicyMode): mode is "input-only" | "prompt-only" | "prompt-with-resources";
/**
 * @description
 * 보안 정책 모드를 검사 엔진이 사용할 상세 옵션으로 변환한다.
 * @param mode 현재 정책 모드
 * @returns 검사 엔진 상세 옵션
 */
export declare function resolveSecurityValidationOptions(mode: SecurityPolicyMode): SecurityValidationOptions;
//# sourceMappingURL=policy.d.ts.map