Skip to content

Update index.d.ts #272

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Aug 31, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
276 changes: 112 additions & 164 deletions index.d.ts
Original file line number Diff line number Diff line change
@@ -1,191 +1,139 @@
export type Events =
'didReceiveStartCallAction' |
'answerCall' |
'endCall' |
'didActivateAudioSession' |
'didDeactivateAudioSession' |
'didDisplayIncomingCall' |
'didToggleHoldCallAction' |
'didPerformDTMFAction' |
'didResetProvider' |
'checkReachability' |
'didPerformSetMutedCallAction' |
'didLoadWithEvents';

type HandleType = 'generic' | 'number' | 'email';

interface IOptions {
ios: {
appName: string,
imageName?: string,
supportsVideo?: boolean,
maximumCallGroups?: string,
maximumCallsPerCallGroup?: string,
ringtoneSound?: string,
},
android: {
alertTitle: string,
alertDescription: string,
cancelButton: string,
okButton: string,
imageName?: string,
additionalPermissions: string[],
},
}

export type DidReceiveStartCallActionPayload = { handle: string };
export type AnswerCallPayload = { callUUID: string };
export type EndCallPayload = AnswerCallPayload;
export type DidDisplayIncomingCallPayload = string | undefined;
export type DidPerformSetMutedCallActionPayload = boolean;

export default class RNCallKeep {
static addEventListener(type: Events, handler: (args: any) => void) {

}

static removeEventListener(type: Events) {

}

static async setup(options: IOptions): Promise<void> {

}

static hasDefaultPhoneAccount(): boolean {

}

static answerIncomingCall(uuid: string) {

}

static registerPhoneAccount(): void {

}

static registerAndroidEvents(): void {

}

static displayIncomingCall(
uuid: string,
handle: string,
localizedCallerName?: string,
handleType?: HandleType,
hasVideo?: boolean,
) {

}

static startCall(
uuid: string,
handle: string,
contactIdentifier?: string,
handleType?: HandleType,
hasVideo?: boolean,
) {

}
static updateDisplay(
uuid: string,
displayName: string,
handle: string,
) {

}

/**
declare module 'react-native-callkeep' {
export type Events =
'didReceiveStartCallAction' |
'answerCall' |
'endCall' |
'didActivateAudioSession' |
'didDeactivateAudioSession' |
'didDisplayIncomingCall' |
'didToggleHoldCallAction' |
'didPerformDTMFAction' |
'didResetProvider' |
'checkReachability' |
'didPerformSetMutedCallAction' |
'didLoadWithEvents';

type HandleType = 'generic' | 'number' | 'email';

interface IOptions {
ios: {
appName: string,
imageName?: string,
supportsVideo?: boolean,
maximumCallGroups?: string,
maximumCallsPerCallGroup?: string,
ringtoneSound?: string,
},
android: {
alertTitle: string,
alertDescription: string,
cancelButton: string,
okButton: string,
imageName?: string,
additionalPermissions: string[],
},
}

export type DidReceiveStartCallActionPayload = { handle: string };
export type AnswerCallPayload = { callUUID: string };
export type EndCallPayload = AnswerCallPayload;
export type DidDisplayIncomingCallPayload = string | undefined;
export type DidPerformSetMutedCallActionPayload = boolean;

export default class RNCallKeep {
static addEventListener(type: Events, handler: (args: any) => void): void

static removeEventListener(type: Events): void

static setup(options: IOptions): Promise<void>

static hasDefaultPhoneAccount(): boolean

static answerIncomingCall(uuid: string): void

static registerPhoneAccount(): void

static registerAndroidEvents(): void

static displayIncomingCall(
uuid: string,
handle: string,
localizedCallerName?: string,
handleType?: HandleType,
hasVideo?: boolean,
): void

static startCall(
uuid: string,
handle: string,
contactIdentifier?: string,
handleType?: HandleType,
hasVideo?: boolean,
): void

static updateDisplay(
uuid: string,
displayName: string,
handle: string,
): void

/**
* @description reportConnectedOutgoingCallWithUUID method is available only on iOS.
*/
static reportConnectedOutgoingCallWithUUID(uuid: string) {

}
*/
static reportConnectedOutgoingCallWithUUID(uuid: string): void

/**
/**
* @description reportConnectedOutgoingCallWithUUID method is available only on iOS.
*/
static reportConnectingOutgoingCallWithUUID(uuid: string): void {
*/
static reportConnectingOutgoingCallWithUUID(uuid: string): void

}
static reportEndCallWithUUID(uuid: string, reason: number): void {
static reportEndCallWithUUID(uuid: string, reason: number): void

}
static rejectCall(uuid: string): void

static rejectCall(uuid: string) {

}
static endCall(uuid: string): void

static endCall(uuid: string) {
static endAllCalls(): void

}

static endAllCalls() {

}
static setReachable(): void

static setReachable() {
static isCallActive(uuid: string): Promise<boolean>

}
static isCallActive(uuid: string): Promise<boolean> {

}
/**
/**
* @description supportConnectionService method is available only on Android.
*/
static supportConnectionService(): boolean {

}
*/
static supportConnectionService(): boolean

/**
/**
* @description hasPhoneAccount method is available only on Android.
*/
static async hasPhoneAccount(): Promise<boolean> {

}
*/
static hasPhoneAccount(): Promise<boolean>

static async hasOutgoingCall(): Promise<boolean> {
static hasOutgoingCall(): Promise<boolean>

}

/**
/**
* @description setMutedCall method is available only on iOS.
*/
static setMutedCall(uuid: string, muted: boolean) {

}

static setOnHold(uuid: string, held: boolean) {
*/
static setMutedCall(uuid: string, muted: boolean): void

}
static setOnHold(uuid: string, held: boolean): void

/**
/**
* @descriptions sendDTMF is used to send DTMF tones to the PBX.
*/
static sendDTMF(uuid: string, key: string) {

}

static checkIfBusy(): Promise<boolean> {
*/
static sendDTMF(uuid: string, key: string): void

}

static checkSpeaker(): Promise<boolean> {
static checkIfBusy(): Promise<boolean>

}
static checkSpeaker(): Promise<boolean>

/**
/**
* @description setAvailable method is available only on Android.
*/
static setAvailable(active: boolean) {

}

static setCurrentCallActive(callUUID: string) {

}
*/
static setAvailable(active: boolean): void

static backToForeground() {
static setCurrentCallActive(callUUID: string): void

static backToForeground(): void
}
}