import 'reflect-metadata'; import type { XemaCapabilityInvocationSpec } from './capability-invocation'; import type { XemaRequiredResourceRoleBinding } from './capability-required-binding'; import type { SpaceFromSpec } from './space-from'; export interface XemaCapabilitiesMetadata { readonly resource: string; readonly version: string; readonly spaceFrom?: SpaceFromSpec; } export interface XemaCapabilitiesOptions { resource: string; version?: string; spaceFrom?: SpaceFromSpec; } export declare function XemaCapabilities(opts: XemaCapabilitiesOptions | null | undefined): ClassDecorator; export type XemaCapabilityRiskTier = 'low' | 'medium' | 'high' | 'critical'; export type XemaCapabilityAuthorityEffect = 'none' | 'expanding'; export type XemaCapabilityOutputClassification = 'public' | 'internal' | 'confidential' | 'secret' | 'regulated'; export type XemaCapabilityReach = 'owner' | 'integration' | 'platform'; export type XemaCapabilityBaselineOrgRole = 'org_member' | 'org_admin' | 'org_owner'; export type XemaCapabilityBaselineEnvironment = 'system' | 'org' | 'project' | 'app' | 'session' | 'sandbox' | 'public' | 'store-review' | 'trusted-dev'; export type XemaCapabilityHumanBaseline = { readonly kind: 'explicit-only'; } | { readonly kind: 'org-role'; readonly minimumOrgRole: XemaCapabilityBaselineOrgRole; readonly environments: readonly XemaCapabilityBaselineEnvironment[]; }; export interface XemaCapabilityOptions { ref?: string; action?: string; title?: string; summary?: string; sideEffects?: string; inputSchema?: Record; outputSchema?: Record; riskTier?: XemaCapabilityRiskTier; authorityEffect?: XemaCapabilityAuthorityEffect; outputClassification?: XemaCapabilityOutputClassification; reach?: XemaCapabilityReach; requiresApproval?: boolean; safeForAgents?: boolean; defaultBaselineOrgRole?: XemaCapabilityBaselineOrgRole; humanBaseline?: XemaCapabilityHumanBaseline; examples?: readonly Record[]; requiredBindings?: readonly XemaRequiredResourceRoleBinding[]; invocation?: XemaCapabilityInvocationSpec; } export interface XemaCapabilityMetadata { readonly ref?: string; readonly action?: string; readonly title?: string; readonly summary?: string; readonly sideEffects?: string; readonly inputSchema?: Record; readonly outputSchema?: Record; readonly riskTier?: XemaCapabilityRiskTier; readonly authorityEffect?: XemaCapabilityAuthorityEffect; readonly outputClassification?: XemaCapabilityOutputClassification; readonly reach?: XemaCapabilityReach; readonly requiresApproval?: boolean; readonly safeForAgents?: boolean; readonly defaultBaselineOrgRole?: XemaCapabilityBaselineOrgRole; readonly humanBaseline?: XemaCapabilityHumanBaseline; readonly examples?: readonly Record[]; readonly requiredBindings?: readonly XemaRequiredResourceRoleBinding[]; readonly invocation?: XemaCapabilityInvocationSpec; } export declare function XemaCapability(refOrOpts?: string | XemaCapabilityOptions): MethodDecorator; //# sourceMappingURL=capability.decorator.d.ts.map