import type { RoleboxConfig, LockFile, LockEntry } from "./types.ts"; export declare function getConfigPath(): string; export declare function getLockPath(): string; /** Ensure config directory exists (and is writable) */ export declare function ensureConfigDir(): void; /** * Load config from ~/.config/rolebox/config.yaml. * If file doesn't exist, creates and returns default config * with the oh-my-role registry. */ export declare function loadConfig(): RoleboxConfig; /** * Save config to ~/.config/rolebox/config.yaml. */ export declare function saveConfig(config: RoleboxConfig): void; /** * Load lock file from ~/.config/rolebox/rolebox.lock. * If file doesn't exist, returns empty LockFile { version: 1, roles: [] }. */ export declare function loadLock(): LockFile; /** * Save lock file to ~/.config/rolebox/rolebox.lock. */ export declare function saveLock(lock: LockFile): void; /** * Add or update a role entry in the lock file. * If the role+registry combo already exists, update version/installedAt/integrity. * Returns the updated LockFile. */ export declare function addToLock(entry: LockEntry): LockFile; /** * Remove a role entry from the lock file by role ID and registry name. * Returns the updated LockFile. */ export declare function removeFromLock(roleId: string, registry: string): LockFile; /** * Find a role entry in the lock file by role ID (checked across all registries). * Returns the LockEntry if found, undefined otherwise. */ export declare function findInLock(roleId: string): LockEntry | undefined; //# sourceMappingURL=config.d.ts.map