import { ZIMSDK, ZIMEventHandler } from 'zego-zim-miniprogram';
import { ZegoUIKitUser, ZegoCallInvitationListener } from '../../defines';
export default class InvitationService {
    static instance: InvitationService;
    static getInstance(): InvitationService;
    zrtcRoomID: string;
    zim: ZIMSDK;
    zimCallID: string;
    userID: string;
    userName: string;
    token: string;
    caller: ZegoUIKitUser;
    private invitationListeners;
    private zimEventListeners;
    initZIM(appID: number, userID: string, userName: string, token: string): Promise<boolean | undefined>;
    unInitZIM(): Promise<void>;
    renewToken(token: string): Promise<boolean | undefined>;
    private login;
    logout(): void;
    bindEventListeners(listeners: ZIMEventHandler): void;
    sendInvitation(invitees: ZegoUIKitUser[], type: number, customData: string, timeout?: number, callID?: string): Promise<{
        code: number;
        callID: string;
        timeout: number;
        errorUserList: import("zego-zim-miniprogram").ZIMErrorUserInfo[];
        customData: string;
    }>;
    cancelInvitation(inviteesIDList: string[], extendedData?: string): Promise<{
        code: number;
    }>;
    acceptInvitation(callID: string, extendedData: string): Promise<{
        callID: string;
    }>;
    refuseInvitation(callID?: string, customData?: string): Promise<{
        callID: string;
    }>;
    endInvitation(): void;
    addCallInvitationListener(listenerID: string, listener: ZegoCallInvitationListener): void;
    removeCallInvitationListener(listenerID: string): void;
}
