export interface AmplifyConfig {
    Analytics?: object;
    Auth?: object;
    API?: object;
    Logging?: object;
    Storage?: object;
    Cache?: object;
    Geo?: object;
    Notifications?: {
        InAppMessaging?: object;
    };
    ssr?: boolean;
}
export interface UserProfile {
    customProperties?: Record<string, string[]>;
    demographic?: {
        appVersion?: string;
        locale?: string;
        make?: string;
        model?: string;
        modelVersion?: string;
        platform?: string;
        platformVersion?: string;
        timezone?: string;
    };
    email?: string;
    location?: {
        city?: string;
        country?: string;
        latitude?: number;
        longitude?: number;
        postalCode?: string;
        region?: string;
    };
    metrics?: Record<string, number>;
    name?: string;
    plan?: string;
}
/**
 * @internal
 */
export type DelayFunction = (attempt: number, args?: any[], error?: unknown) => number | false;
