import type { CoreProviderProps } from '../context/CoreContext/CoreProvider';
import type { ExperimentsProps } from '../context/ExperimentContext/types';
import type { SettingsProps } from '../context/SettingsContext/types';
import type { EventEmitter } from '../core/EventEmitter';
import { AcceptTermsOfServiceComponent } from './EmbeddedDropins/AcceptTermsOfServiceComponent/AcceptTermsOfServiceComponent';
import { CreateTransferInstrumentComponent } from './EmbeddedDropins/CreateTransferInstrumentComponent/CreateTransferInstrumentComponent';
import { ManageIndividualComponent } from './EmbeddedDropins/ManageIndividualComponent/ManageIndividualComponent';
import { ManagePCIComponent } from './EmbeddedDropins/ManagePCIComponent/ManagePCIComponent';
import { ManageTermsOfServiceComponent } from './EmbeddedDropins/ManageTermsOfServiceComponent/ManageTermsOfServiceComponent';
import { ManageTransferInstrumentComponent } from './EmbeddedDropins/ManageTransferInstrumentComponent/ManageTransferInstrumentComponent';
import { OnboardingDropinComponent } from './EmbeddedDropins/OnboardingDropinComponent/OnboardingDropinComponent';
import { SignPCIComponent } from './EmbeddedDropins/SignPCIComponent/SignPCIComponent';
import { UpdateLegalEntityForHighExposure } from './EmbeddedDropins/UpdateLegalEntityForHighExposure/UpdateLegalEntityForHighExposure';
import { ViewVerificationStatusComponent } from './EmbeddedDropins/ViewVerificationStatus/ViewVerificationStatusComponent';
/**
 * Maps each component with a Component element.
 */
export declare const componentsMap: {
    readonly createTransferInstrumentComponent: typeof CreateTransferInstrumentComponent;
    readonly createIndividualComponent: ({ legalEntityId, onSubmitSuccess, modalView, onClose, onUnmount, }: import("./EmbeddedDropins/CreateIndividualComponent/CreateIndividualComponent").CreateIndividualComponentProps) => import("preact/jsx-runtime").JSX.Element;
    readonly manageTransferInstrumentComponent: typeof ManageTransferInstrumentComponent;
    readonly onboardingDropinComponent: typeof OnboardingDropinComponent;
    readonly manageIndividualComponent: typeof ManageIndividualComponent;
    readonly acceptTermsOfServiceComponent: typeof AcceptTermsOfServiceComponent;
    readonly manageTermsOfServiceComponent: typeof ManageTermsOfServiceComponent;
    readonly managePCIComponent: typeof ManagePCIComponent;
    readonly signPCIComponent: typeof SignPCIComponent;
    readonly viewVerificationStatusComponent: typeof ViewVerificationStatusComponent;
    readonly updateLegalEntityForHighExposureComponent: typeof UpdateLegalEntityForHighExposure;
};
export type ComponentMap = typeof componentsMap;
export type ComponentProps<Name extends keyof ComponentMap> = Parameters<ComponentMap[Name]>[0];
export type ComponentPropsWithoutInternalProps<Name extends keyof ComponentMap> = Omit<ComponentProps<Name>, keyof CommonInternalProps>;
/** List componentProps (passed from UIElement or DropinComposer to Component) which are internal
 * and  not exposed to consumers,
 */
interface CommonInternalProps {
    /** Used when component itself needs to handle cleanup.
     *  Eg. When Close button is clicked in modal view
     */
    onUnMount(): void;
    /** Used to update locale in components */
    eventEmitter: EventEmitter;
    /** Used to indicate externally exposed props are used with in HO/DropinComposer **/
    asEmbedded: boolean;
    /** Used in AcceptTermsOfService to handle adding signer flow in HO **/
    handleAddSigner(): void;
}
export type ComponentOptions<Name extends keyof ComponentMap> = ComponentPropsWithoutInternalProps<Name> & Partial<CoreProviderProps> & Partial<SettingsProps> & Partial<ExperimentsProps>;
export {};
