import type { Settings } from '../context/SettingsContext/types';
import type { Features } from '../context/ToggleContext/types';
/** The base/shared props for our embeds/components */
export interface BaseEmbedProps {
    /**
     * The (root) legal entity id for which the Component is instantiated
     * */
    rootlegalentityid: string;
    /**
     * Can be `live` or `test`, otherwise manually provide the API url.
     */
    environment: 'live' | 'test' | string;
    /**
     * The user's locale, eg: `en-US`
     * @see https://docs.adyen.com/platforms/onboard-users/components/#supported-languages list of supported locales
     */
    locale: string;
    /**
     * An async function which returns a valid token. May be called multiple times.
     */
    fetchToken: () => Promise<{
        token: string;
    }>;
    /** Settings and its usage relevant for each component can be found in the respective component docs */
    settings?: Partial<Settings>;
    /** internal only - to enable/disable certain features under active development or rolling out. */
    experiments?: Features;
}
