import { NativeEventEmitter } from 'react-native';
import { AirbridgeTrackingLink } from '../type/AirbridgeTrackingLink';
export declare const createDependency: {
    (): void;
    PlacementModule(): {
        emitter: NativeEventEmitter;
        interactor: PlacementInteractor;
    };
};
type PlacementInteractor = {
    click(promiseID: string, trackingLink: string, onSuccess: () => void, onFailure: (message: string) => void): Promise<boolean>;
    impression(promiseID: string, trackingLink: string, onSuccess: () => void, onFailure: (message: string) => void): Promise<boolean>;
    createTrackingLink(channel: string, option: Record<string, any>, onSuccess: (airbridgeTrackingLink: Record<string, string>) => void, onFailure: (message: string) => void): void;
};
export type PlacementModule = ReturnType<typeof createPlacementModule>;
export declare const createPlacementModule: () => {
    click: (trackingLink: string, onSuccess?: () => void, onFailure?: (error: Error) => void) => Promise<boolean>;
    impression: (trackingLink: string, onSuccess?: () => void, onFailure?: (error: Error) => void) => Promise<boolean>;
    createTrackingLink: (channel: string, option: Record<string, any>, onSuccess: (airbridgeTrackingLink: AirbridgeTrackingLink) => void, onFailure?: (error: Error) => void) => void;
};
export {};
