import type { PersonalizationScope } from "../cli/personalization-profile-model.js"; export declare const EFFECTIVE_PROFILE_SCHEMA: "effective-profile.v1"; export type EffectiveProfileLayer = "invariant" | "task" | "project" | "personal" | "starter"; export type EffectiveProfileBlockReason = "malformed-input" | "profile-unavailable" | "ambiguous-conflict" | "selection-overflow"; export type EffectiveProfileRuleInput = { readonly id: string; readonly topic: string; readonly rule: string; readonly scope?: PersonalizationScope | null; readonly fileRoles?: readonly string[]; readonly skillIds?: readonly string[]; readonly status?: "active" | "pending" | "superseded"; }; export type EffectiveProfileRelevance = { readonly topics: readonly string[]; readonly fileRole: string; readonly skillIds: readonly string[]; readonly projectKey?: string; readonly taskKey?: string; }; export type EffectiveProfileResolutionInput = { readonly productInvariants: readonly EffectiveProfileRuleInput[]; readonly taskDecisions: readonly EffectiveProfileRuleInput[]; readonly projectContracts: readonly EffectiveProfileRuleInput[]; readonly personalRules: readonly EffectiveProfileRuleInput[]; readonly starterDefaults: readonly EffectiveProfileRuleInput[]; readonly relevance: EffectiveProfileRelevance; readonly maxCapsules?: number; readonly personalProfileAvailable?: boolean; }; export type EffectiveProfileCapsule = { readonly id: string; readonly source: EffectiveProfileLayer; readonly topic: string; readonly rule: string; }; export type EffectiveProfileSelection = { readonly id: string; readonly source: EffectiveProfileLayer; readonly topic: string; readonly reason: string; }; export type EffectiveProfileResolution = { readonly status: "resolved"; readonly capsules: readonly EffectiveProfileCapsule[]; readonly selections: readonly EffectiveProfileSelection[]; } | { readonly status: "blocked"; readonly reason: EffectiveProfileBlockReason; readonly capsules: readonly []; readonly selections: readonly []; }; export declare function createProductSafetyInvariants(): readonly EffectiveProfileRuleInput[]; export declare function createStarterProfileDefaults(): readonly EffectiveProfileRuleInput[]; export declare function resolveEffectiveProfile(value: unknown): EffectiveProfileResolution;