import { i as NodmixConfig } from "./types.nodmix-Dph4_Y30.js";
import { d as SecretInput, h as SecretRef } from "./types.secrets-BKPYDrKY.js";
import { b as SecretInputMode } from "./types-BymzGYyb.js";
import { r as OAuthCredentials } from "./provider-oauth-runtime-s_N5tDjB.js";
//#region src/plugins/provider-auth-helpers.d.ts
type ApiKeyStorageOptions = {
  secretInputMode?: SecretInputMode;
  config?: NodmixConfig;
};
type WriteOAuthCredentialsOptions = {
  syncSiblingAgents?: boolean;
  profileName?: string;
  displayName?: string;
};
declare function buildApiKeyCredential(provider: string, input: SecretInput, metadata?: Record<string, string>, options?: ApiKeyStorageOptions): {
  type: "api_key";
  provider: string;
  key?: string;
  keyRef?: SecretRef;
  metadata?: Record<string, string>;
};
declare function upsertApiKeyProfile(params: {
  provider: string;
  input: SecretInput;
  agentDir?: string;
  options?: ApiKeyStorageOptions;
  profileId?: string;
  metadata?: Record<string, string>;
}): string;
declare function applyAuthProfileConfig(cfg: NodmixConfig, params: {
  profileId: string;
  provider: string;
  mode: "api_key" | "aws-sdk" | "oauth" | "token";
  email?: string;
  displayName?: string;
  preferProfileFirst?: boolean;
}): NodmixConfig;
declare function writeOAuthCredentials(provider: string, creds: OAuthCredentials, agentDir?: string, options?: WriteOAuthCredentialsOptions): Promise<string>;
//#endregion
export { upsertApiKeyProfile as a, buildApiKeyCredential as i, WriteOAuthCredentialsOptions as n, writeOAuthCredentials as o, applyAuthProfileConfig as r, ApiKeyStorageOptions as t };