import { Policy, PolicyRule } from "./policy-types.mjs"; //#region extensions/crypto/src/services/autonomy-profiles.d.ts type ProfileId = 'supervised' | 'training' | 'autonomous' | 'custom'; interface AutonomyProfile { id: ProfileId; name: string; description: string; /** Human-readable summary of what the agent can do. */ summary: string[]; /** Policy rules created when profile is activated. */ rules: PolicyRule[]; /** Which tool categories are in scope. Empty = all tools. */ scopeCategories: string[]; /** Delegation parameters (for on-chain mode). */ delegation: { /** Expiry duration in seconds. 0 = no delegation (supervised). */expirySec: number; /** Max single-tx value in USD. 0 = no cap (uses spending limit). */ maxTxUsd: number; }; } /** Get the list of all available profiles. */ declare function listProfiles(): AutonomyProfile[]; /** Get a profile by ID. */ declare function getProfile(id: string): AutonomyProfile | undefined; /** Get the active profile for a user (checks existing policies). */ declare function getActiveProfile(userId: string): ProfileId; /** * Activate a profile for a user. * * - Removes any existing profile-generated policies. * - Creates new policies from the profile template. * - Does NOT compile to on-chain delegation (use /delegate create after). * - Returns the created policies (empty for supervised/custom). */ declare function activateProfile(userId: string, profileId: ProfileId): { profile: AutonomyProfile; policies: Policy[]; }; /** * Deactivate a profile — removes profile-generated policies. * Reverts to supervised. */ declare function deactivateProfile(userId: string): void; /** Format a profile for display. */ declare function formatProfileDisplay(profile: AutonomyProfile, isActive: boolean): string; /** Reset profile cache (for testing). */ declare function resetProfileCache(): void; //#endregion export { AutonomyProfile, ProfileId, activateProfile, deactivateProfile, formatProfileDisplay, getActiveProfile, getProfile, listProfiles, resetProfileCache }; //# sourceMappingURL=autonomy-profiles.d.mts.map