import { type ManagedOpenCodeAgentName } from "./managed-agents.js"; import { type GuardianConfig, type GuardianConfigOverrides, type SecretsRedactionConfig, type VvocConfig } from "./vvoc-config.js"; import { PACKAGE_NAME } from "./package.js"; export declare const CLI_NAME = "vvoc"; export { PACKAGE_NAME }; export declare const OPENCODE_SCHEMA_URL = "https://opencode.ai/config.json"; type JsonObject = Record; export type OpenCodeDefaultModelKey = "model" | "small_model"; export type Scope = "global" | "project"; export type ResolvedPaths = { scope: Scope; cwd: string; configHome: string; opencodeBaseDir: string; vvocBaseDir: string; vvocConfigPath: string; managedAgentsDirPath: string; managedPlansDirPath: string; managedSkillsDirPath: string; opencodeConfigPath: string; opencodeAlternatePaths: string[]; }; export type WriteResult = { action: "created" | "updated" | "kept" | "skipped"; path: string; reason?: string; }; export type ManagedAgentModelMap = Record; export type OpenCodeAgentOverride = { model?: string; }; export type ManagedAgentOverrideMap = Record; export type InstallationInspection = { scope: Scope; opencode: { path: string; exists: boolean; alternates: string[]; parseError?: string; pluginConfigured: boolean; plugins: string[]; }; vvoc: { path: string; exists: boolean; parseError?: string; schema?: string; version?: number; }; guardian: { config?: GuardianConfig; }; secretsRedaction: { config?: SecretsRedactionConfig; }; roles: { assignments: Array<{ roleId: string; model: string; builtIn: boolean; }>; unresolvedReferences: Array<{ fieldPath: string; roleRef: string; roleId: string; }>; }; warnings: string[]; problems: string[]; }; export declare function resolvePaths(options: { scope: Scope; cwd: string; configDir?: string; }): Promise; export declare function ensurePackageConfigText(text: string | undefined, packageSpecifier?: string): string; export declare function ensureManagedAgentRegistrationsConfigText(text: string | undefined, paths: Pick): string; export declare function syncManagedAgentRegistrations(paths: ResolvedPaths): Promise<{ path: string; changed: boolean; }>; export declare function installManagedAgentPrompts(paths: ResolvedPaths, options: { force: boolean; }): Promise; export declare function syncManagedAgentPrompts(paths: ResolvedPaths, options: { force: boolean; }): Promise; export declare function ensureManagedPlanDirectory(paths: Pick): Promise; export declare function installManagedSkillFiles(paths: ResolvedPaths, options: { force: boolean; }): Promise; export declare function syncManagedSkillFiles(paths: ResolvedPaths, options: { force: boolean; }): Promise; export declare function ensureManagedSkillSymlink(configDir?: string): Promise; export declare function readManagedAgentModels(paths: Pick): Promise; export declare function readManagedAgentOverrides(paths: Pick): Promise; export declare function readOpenCodeAgentModel(paths: Pick, agentName: string): Promise; export declare function readOpenCodeAgentOverride(paths: Pick, agentName: string): Promise; export declare function readOpenCodeDefaultModel(paths: Pick, key: OpenCodeDefaultModelKey): Promise; export declare function writeOpenCodeAgentModel(paths: Pick, agentName: string, options: { model?: string; ensureEntry: boolean; }): Promise; export declare function writeOpenCodeDefaultModel(paths: Pick, key: OpenCodeDefaultModelKey, options: { model?: string; ensureEntry: boolean; }): Promise; export declare function writeOpenCodeProviderObject(paths: Pick, providerID: string, value: JsonObject): Promise; export declare function writeManagedAgentModel(paths: Pick, agentName: ManagedOpenCodeAgentName, options: { model?: string; ensureEntry: boolean; }): Promise; export { parseGuardianConfigText, renderGuardianConfig, type GuardianConfigOverrides, } from "./vvoc-config.js"; export declare function ensurePackageInstalled(paths: ResolvedPaths): Promise<{ path: string; changed: boolean; }>; export declare function ensureProviderBaseUrlConfigText(text: string | undefined, providerID: string, baseURL: string): string; export declare function writeProviderBaseUrl(paths: Pick, providerID: string, baseURL: string): Promise; export declare function readVvocConfig(paths: Pick): Promise; export declare function installVvocConfig(paths: Pick): Promise; export declare function syncVvocConfig(paths: Pick): Promise; export declare function writeGuardianConfig(paths: Pick, overrides: GuardianConfigOverrides, options?: { merge?: boolean; }): Promise; export declare function inspectInstallation(paths: ResolvedPaths): Promise; export declare function describeWriteResult(result: WriteResult): string;