export interface ContextTargetEndpoint { endpoint: string; } export interface ContextConfig { name: string; endpoint: string; targets?: Record; createdAt: string; updatedAt: string; } export interface ContextCredentials { token: string; expiresAt?: string; refreshToken?: string; } export interface Credentials { tokens: Record; } export interface GlobalSettings { currentContext?: string; } export interface ConfigStoreOptions { baseDir?: string; } export interface ClientConfig { endpoint: string; headers: Record; } export interface ConfigStore { loadSettings(): GlobalSettings; saveSettings(settings: GlobalSettings): void; createContext(name: string, options: { endpoint: string; targets?: Record; }): ContextConfig; loadContext(name: string): ContextConfig | null; listContexts(): ContextConfig[]; deleteContext(name: string): boolean; getCurrentContext(): ContextConfig | null; setCurrentContext(name: string): boolean; getTargetEndpoint(targetName: string, contextName?: string): string | null; setCredentials(contextName: string, creds: ContextCredentials): void; getCredentials(contextName: string): ContextCredentials | null; removeCredentials(contextName: string): boolean; hasValidCredentials(contextName: string): boolean; setVar(key: string, value: string, contextName?: string): void; getVar(key: string, contextName?: string): string | null; deleteVar(key: string, contextName?: string): boolean; listVars(contextName?: string): Record; getClientConfig(targetName: string, contextName?: string): ClientConfig; } export declare function createConfigStore(toolName: string, options?: ConfigStoreOptions): ConfigStore;