import { type KeychainRunner } from "./keychain-secret-store.js"; import type { NativeIntegrationTool } from "./native-integrations.js"; export type NativeCredentialOptions = { platform?: NodeJS.Platform; runKeychain?: KeychainRunner; home?: string; }; export type NativeCredentialLocation = { keychainService: string; keychainAccount: string; fallbackPath: string; }; /** * Derive every persistent location for one native-client credential. Keeping * this pure lets lifecycle tests verify the real OS store without duplicating * account or path derivation. */ export declare function nativeCredentialLocation(tool: NativeIntegrationTool, configPath: string, home?: string): NativeCredentialLocation; /** Private fallback path used on Linux and other platforms without a keychain. */ export declare function nativeCredentialPath(tool: NativeIntegrationTool, configPath: string): string; export declare function writeNativeCredential(tool: NativeIntegrationTool, configPath: string, token: string, options?: NativeCredentialOptions): Promise; export declare function readNativeCredential(tool: NativeIntegrationTool, configPath: string, options?: NativeCredentialOptions): Promise; export declare function deleteNativeCredential(tool: NativeIntegrationTool, configPath: string, options?: NativeCredentialOptions): Promise;