import type { ContextIdentifier, KsefEnvironment, KsefLighthouseEnvironment, JsonValue, } from "../index"; export type TokenStorePolicy = "plaintext" | "env"; export interface TokenStoreConfig { policy: TokenStorePolicy; filePath?: string; accessTokenEnvVar?: string; refreshTokenEnvVar?: string; ksefTokenEnvVar?: string; } export interface ProfileConfig { environment?: KsefEnvironment; baseUrl?: string; lighthouseEnvironment?: KsefLighthouseEnvironment; context?: ContextIdentifier; tokenStore?: TokenStoreConfig; strictPresignedUrlValidation?: boolean; allowedPresignedHosts?: string[]; allowPrivateNetworkPresignedUrls?: boolean; } export interface CliConfigFile { version: 1; currentProfile: string; profiles: Record; } export interface StoredTokens { accessToken: string; accessTokenValidUntil?: string; refreshToken?: string; refreshTokenValidUntil?: string; updatedAt: string; } export interface TokenStoreFile { version: 1; profiles: Record; } export type CliJson = JsonValue; export interface CliEnv { [key: string]: string | undefined; }