import { ParentToChildEvents, ChildToParentEvents } from "../enums";
import { ErrorPayload } from "../types";
export type CSSOverridesAppliedCallback = (cssOverrides: string) => void;
export type CustomEventCallback = (payload: any) => void;
export type Listeners = {
    [ParentToChildEvents.cssOverridesApplied]?: CSSOverridesAppliedCallback[];
} & {
    [key: string]: CustomEventCallback[];
};
declare class Child {
    #private;
    listeners: Partial<Listeners>;
    constructor();
    on: (eventName: keyof Listeners, callback: any) => void;
    getFingerprint: () => string | null;
    [ChildToParentEvents.scriptLog]: (payload: any) => void;
    [ChildToParentEvents.success]: (payload: {
        data: Record<string, string>;
        signature: string;
    }) => void;
    [ChildToParentEvents.notifyCdpUrl]: (url: string) => void;
    [ChildToParentEvents.error]: (payload: ErrorPayload) => void;
    [ChildToParentEvents.requestOauth]: (payload: any) => void;
    [ChildToParentEvents.initialize]: () => Promise<this>;
}
export { Child };
