import type { VirtualFS } from '../virtual-fs';
export declare const AWS_CONFIG_PATH = "/home/user/.config/almostnode/aws/config.json";
export declare const AWS_AUTH_PATH = "/home/user/.config/almostnode/aws/auth.json";
export type AwsOutputFormat = 'json' | 'text';
export interface AwsSsoSessionConfig {
    startUrl: string;
    region: string;
    registrationScopes: string[];
}
export interface AwsProfileConfig {
    ssoSession: string;
    accountId: string;
    roleName: string;
    region?: string;
    output?: AwsOutputFormat;
}
export interface AwsConfigFile {
    version: number;
    defaultProfile: string | null;
    ssoSessions: Record<string, AwsSsoSessionConfig>;
    profiles: Record<string, AwsProfileConfig>;
}
export interface AwsSsoClientRegistration {
    clientId: string;
    clientSecret: string;
    clientSecretExpiresAt: string;
    region: string;
    startUrl: string;
    registrationScopes: string[];
}
export interface AwsSsoSessionToken {
    accessToken: string;
    refreshToken?: string;
    expiresAt: string;
    issuedAt: string;
    region: string;
    startUrl: string;
    registrationScopes: string[];
}
export interface AwsRoleCredentialCache {
    accessKeyId: string;
    secretAccessKey: string;
    sessionToken: string;
    expiresAt: string;
    accountId: string;
    roleName: string;
    region: string;
    ssoSession: string;
}
export interface AwsAuthFile {
    version: number;
    clients: Record<string, AwsSsoClientRegistration>;
    sessions: Record<string, AwsSsoSessionToken>;
    roleCredentials: Record<string, AwsRoleCredentialCache>;
}
export interface AwsStoredStateSummary {
    hasConfig: boolean;
    hasProfiles: boolean;
    hasSsoSessions: boolean;
    hasAuth: boolean;
    hasValidAccessToken: boolean;
    hasValidRoleCredentials: boolean;
    defaultProfile: string | null;
    profileNames: string[];
    sessionNames: string[];
}
export declare function readAwsConfig(vfs: VirtualFS): AwsConfigFile;
export declare function writeAwsConfig(vfs: VirtualFS, config: AwsConfigFile): void;
export declare function readAwsAuth(vfs: VirtualFS): AwsAuthFile;
export declare function writeAwsAuth(vfs: VirtualFS, auth: AwsAuthFile): void;
export declare function isAwsTimestampValid(value: string | null | undefined, skewMs?: number): boolean;
export declare function inspectAwsStoredState(vfs: VirtualFS): AwsStoredStateSummary;
//# sourceMappingURL=aws-storage.d.ts.map