/** * Effective setup scope support derived from the extension-type and coding-agent catalogs. * * @experimental This API is unstable and may change without notice. */ import { type ExtensionType, type ExtensionPlacement } from "../extensions/common.js"; import type { WorkspaceScope } from "./scope.js"; export type SetupScopeSupportStatus = "supported" | "project-only" | "unsupported" | "refused"; export type SetupScopeSupportReasonCode = "supported" | "no-configured-agents" | "unknown-agent" | "native-capability-unavailable" | "axm-capability-unavailable" | "project-only" | "scope-not-modeled"; export interface SetupScopeSupportOutcome { readonly target: "workspace" | "container" | "agent" | "agent-set"; readonly agentId?: string; readonly agentName?: string; readonly status: SetupScopeSupportStatus; readonly reasonCode: SetupScopeSupportReasonCode; readonly reason: string; } export interface SetupScopeSupportCategory { readonly type: ExtensionType; readonly label: string; readonly placement: ExtensionPlacement; readonly outcomes: ReadonlyArray; } export declare const setupScopeSupportOutcomes: (type: ExtensionType, agentIds: ReadonlyArray, scope: WorkspaceScope) => ReadonlyArray; /** Derive setup's category and per-agent scope contract from canonical catalogs. */ export declare const setupScopeSupport: (agentIds: ReadonlyArray, scope: WorkspaceScope) => ReadonlyArray; //# sourceMappingURL=setup-scope-support.d.ts.map