import { INTERACTION_DIRECTION_TYPES } from '../models/Interactions'; import { CHANNEL_TYPES } from '../models/ChannelTypes'; /** * Use this to revive an event whenever screenpops are disabled or enabled. * * When disabled screen pops should not be preformed either when [[screenpop]] or [[setInteraction]] is called. * * @param callback Called when the status of the screenpop control changes. * The application should not preform screenpops when screenPopEnabled is false. */ export declare function registerScreenpopControlChanged(callback: (screenPopEnabled: boolean) => Promise): Promise; /** * Sets whether or not screenpop is enabled. * * See [[registerScreenpopControlChanged]] for more. * @param enabled */ export declare function setScreenpopControl(enabled: boolean): Promise; /** * Apps integrated with a CRM should register for this so that other apps can open record/entities in * CRM if they have the record's ID, say from [[registerOnFocus]] or the like. * * See [[screenpop]] * * @param callback Called when another App requests a screenpop of the given object */ export declare function registerScreenpop(callback: (channel: CHANNEL_TYPES, direction: INTERACTION_DIRECTION_TYPES, objectId: string, objectType: string) => Promise): Promise; /** * This causes a screenpop on the application of given record. * This is useful if you want to open a record you received from [[registerOnFocus]] or the like. * * See [[registerScreenpop]] for more. * * @param channel Type of channel that caused the screenpop * @param direction Direction of the interaction that caused the screenpop * @param objectId Id of the object to pop * @param objectType Type of the object to pop */ export declare function screenpop(channel: CHANNEL_TYPES, direction: INTERACTION_DIRECTION_TYPES, objectId: string, objectType: string): Promise;