import type { CountryCode } from '../types/datasets/country-code';
export interface CoreOptions {
    /**
     * The URL of the KYC external API. This will be used to fetch static resources and configurations.
     */
    environment: string;
    /**
     * @defaultValue 'en-US'
     */
    locale: string;
    country: CountryCode;
    /**
     * JWT token used for embedded Dropin authentication
     */
    sdkToken?: string;
    getSdkToken?(): Promise<{
        token: string;
    }>;
    /**
     * When the user's session is set to expire.
     * Should be provided as a Unix timestamp, i.e. milliseconds since epoch (e.g. 1721054807209).
     *
     * N.B. if `expiry` is provided, you **must** also provide `refreshExpiry()`.
     */
    expiry?: number;
    /**
     * A way to refresh the current session. Should return the new {@link expiry} timestamp.
     */
    refreshExpiry?: () => Promise<number>;
}
