1e1c44949Sopenharmony_ci/*
2e1c44949Sopenharmony_ci * Copyright (C) 2021-2023 Huawei Device Co., Ltd.
3e1c44949Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
4e1c44949Sopenharmony_ci * you may not use this file except in compliance with the License.
5e1c44949Sopenharmony_ci * You may obtain a copy of the License at
6e1c44949Sopenharmony_ci *
7e1c44949Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
8e1c44949Sopenharmony_ci *
9e1c44949Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
10e1c44949Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
11e1c44949Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12e1c44949Sopenharmony_ci * See the License for the specific language governing permissions and
13e1c44949Sopenharmony_ci * limitations under the License.
14e1c44949Sopenharmony_ci */
15e1c44949Sopenharmony_ci
16e1c44949Sopenharmony_ci/**
17e1c44949Sopenharmony_ci * @file
18e1c44949Sopenharmony_ci * @kit TelephonyKit
19e1c44949Sopenharmony_ci */
20e1c44949Sopenharmony_ci
21e1c44949Sopenharmony_ciimport type { AsyncCallback, Callback } from './@ohos.base';
22e1c44949Sopenharmony_ciimport type image from './@ohos.multimedia.image';
23e1c44949Sopenharmony_ci
24e1c44949Sopenharmony_ci/**
25e1c44949Sopenharmony_ci * Provides methods related to call management.
26e1c44949Sopenharmony_ci *
27e1c44949Sopenharmony_ci * @namespace call
28e1c44949Sopenharmony_ci * @syscap SystemCapability.Telephony.CallManager
29e1c44949Sopenharmony_ci * @since 6
30e1c44949Sopenharmony_ci */
31e1c44949Sopenharmony_ci/**
32e1c44949Sopenharmony_ci * Provides methods related to call management.
33e1c44949Sopenharmony_ci *
34e1c44949Sopenharmony_ci * @namespace call
35e1c44949Sopenharmony_ci * @syscap SystemCapability.Telephony.CallManager
36e1c44949Sopenharmony_ci * @atomicservice
37e1c44949Sopenharmony_ci * @since 11
38e1c44949Sopenharmony_ci */
39e1c44949Sopenharmony_cideclare namespace call {
40e1c44949Sopenharmony_ci  /**
41e1c44949Sopenharmony_ci   * Makes a call.
42e1c44949Sopenharmony_ci   *
43e1c44949Sopenharmony_ci   * @permission ohos.permission.PLACE_CALL
44e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the called number.
45e1c44949Sopenharmony_ci   * @param { DialOptions } options - Indicates additional information carried in the call.
46e1c44949Sopenharmony_ci   * @param { AsyncCallback<boolean> } callback - Indicates the callback for getting the result of the call.
47e1c44949Sopenharmony_ci   * Returns {@code true} if the call request is successful; returns {@code false} otherwise.
48e1c44949Sopenharmony_ci   * Note that the value {@code true} indicates only the successful processing of the request; it does not mean
49e1c44949Sopenharmony_ci   * that the call is or can be connected.
50e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
51e1c44949Sopenharmony_ci   * @since 6
52e1c44949Sopenharmony_ci   * @deprecated since 9
53e1c44949Sopenharmony_ci   * @useinstead telephony.call#dialCall
54e1c44949Sopenharmony_ci   */
55e1c44949Sopenharmony_ci  function dial(phoneNumber: string, options: DialOptions, callback: AsyncCallback<boolean>): void;
56e1c44949Sopenharmony_ci
57e1c44949Sopenharmony_ci  /**
58e1c44949Sopenharmony_ci   * Makes a call.
59e1c44949Sopenharmony_ci   *
60e1c44949Sopenharmony_ci   * @permission ohos.permission.PLACE_CALL
61e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the called number.
62e1c44949Sopenharmony_ci   * @param { DialOptions } options - Indicates additional information carried in the call.
63e1c44949Sopenharmony_ci   * @returns { Promise<boolean> } Returns the result of the call.
64e1c44949Sopenharmony_ci   * Returns {@code true} if the call request is successful; returns {@code false} otherwise.
65e1c44949Sopenharmony_ci   * Note that the value {@code true} indicates only the successful processing of the request; it does not mean
66e1c44949Sopenharmony_ci   * that the call is or can be connected.
67e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
68e1c44949Sopenharmony_ci   * @since 6
69e1c44949Sopenharmony_ci   * @deprecated since 9
70e1c44949Sopenharmony_ci   * @useinstead telephony.call#dialCall
71e1c44949Sopenharmony_ci   */
72e1c44949Sopenharmony_ci  function dial(phoneNumber: string, options?: DialOptions): Promise<boolean>;
73e1c44949Sopenharmony_ci
74e1c44949Sopenharmony_ci  /**
75e1c44949Sopenharmony_ci   * Makes a call.
76e1c44949Sopenharmony_ci   *
77e1c44949Sopenharmony_ci   * @permission ohos.permission.PLACE_CALL
78e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the called number.
79e1c44949Sopenharmony_ci   * @param { AsyncCallback<boolean> } callback - Indicates the callback for getting the result of the call.
80e1c44949Sopenharmony_ci   * Returns {@code true} if the call request is successful; returns {@code false} otherwise.
81e1c44949Sopenharmony_ci   * Note that the value {@code true} indicates only the successful processing of the request; it does not mean
82e1c44949Sopenharmony_ci   * that the call is or can be connected.
83e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
84e1c44949Sopenharmony_ci   * @since 6
85e1c44949Sopenharmony_ci   * @deprecated since 9
86e1c44949Sopenharmony_ci   * @useinstead telephony.call#dialCall
87e1c44949Sopenharmony_ci   */
88e1c44949Sopenharmony_ci  function dial(phoneNumber: string, callback: AsyncCallback<boolean>): void;
89e1c44949Sopenharmony_ci
90e1c44949Sopenharmony_ci  /**
91e1c44949Sopenharmony_ci   * Makes a call.
92e1c44949Sopenharmony_ci   *
93e1c44949Sopenharmony_ci   * @permission ohos.permission.PLACE_CALL
94e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the called number.
95e1c44949Sopenharmony_ci   * @param { DialCallOptions } options - Indicates additional information carried in the call.
96e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of dialCall.
97e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
98e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
99e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
100e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
101e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
102e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
103e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300005 - Airplane mode is on.
104e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300006 - Network not in service.
105e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
106e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
107e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
108e1c44949Sopenharmony_ci   * @since 9
109e1c44949Sopenharmony_ci   */
110e1c44949Sopenharmony_ci  function dialCall(phoneNumber: string, options: DialCallOptions, callback: AsyncCallback<void>): void;
111e1c44949Sopenharmony_ci
112e1c44949Sopenharmony_ci  /**
113e1c44949Sopenharmony_ci   * Makes a call.
114e1c44949Sopenharmony_ci   *
115e1c44949Sopenharmony_ci   * @permission ohos.permission.PLACE_CALL
116e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the called number.
117e1c44949Sopenharmony_ci   * @param { DialCallOptions } options - Indicates additional information carried in the call.
118e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the dialCall.
119e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
120e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
121e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
122e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
123e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
124e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
125e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300005 - Airplane mode is on.
126e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300006 - Network not in service.
127e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
128e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
129e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
130e1c44949Sopenharmony_ci   * @since 9
131e1c44949Sopenharmony_ci   */
132e1c44949Sopenharmony_ci  function dialCall(phoneNumber: string, options?: DialCallOptions): Promise<void>;
133e1c44949Sopenharmony_ci
134e1c44949Sopenharmony_ci  /**
135e1c44949Sopenharmony_ci   * Makes a call.
136e1c44949Sopenharmony_ci   *
137e1c44949Sopenharmony_ci   * @permission ohos.permission.PLACE_CALL
138e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the called number.
139e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of dialCall.
140e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
141e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
142e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
143e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
144e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
145e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
146e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300005 - Airplane mode is on.
147e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300006 - Network not in service.
148e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
149e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
150e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
151e1c44949Sopenharmony_ci   * @since 9
152e1c44949Sopenharmony_ci   */
153e1c44949Sopenharmony_ci  function dialCall(phoneNumber: string, callback: AsyncCallback<void>): void;
154e1c44949Sopenharmony_ci
155e1c44949Sopenharmony_ci  /**
156e1c44949Sopenharmony_ci   * Go to the dial screen and the called number is displayed.
157e1c44949Sopenharmony_ci   *
158e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the called number.
159e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of makeCall.
160e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
161e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
162e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
163e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
164e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
165e1c44949Sopenharmony_ci   * @syscap SystemCapability.Applications.Contacts
166e1c44949Sopenharmony_ci   * @since 7
167e1c44949Sopenharmony_ci   */
168e1c44949Sopenharmony_ci  /**
169e1c44949Sopenharmony_ci   * Go to the dial screen and the called number is displayed.
170e1c44949Sopenharmony_ci   *
171e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the called number.
172e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of makeCall.
173e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
174e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
175e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
176e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
177e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
178e1c44949Sopenharmony_ci   * @syscap SystemCapability.Applications.Contacts
179e1c44949Sopenharmony_ci   * @atomicservice
180e1c44949Sopenharmony_ci   * @since 11
181e1c44949Sopenharmony_ci   */
182e1c44949Sopenharmony_ci  function makeCall(phoneNumber: string, callback: AsyncCallback<void>): void;
183e1c44949Sopenharmony_ci
184e1c44949Sopenharmony_ci  /**
185e1c44949Sopenharmony_ci   * Go to the dial screen and the called number is displayed.
186e1c44949Sopenharmony_ci   *
187e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the called number.
188e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the makeCall.
189e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
190e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
191e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
192e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
193e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
194e1c44949Sopenharmony_ci   * @syscap SystemCapability.Applications.Contacts
195e1c44949Sopenharmony_ci   * @since 7
196e1c44949Sopenharmony_ci   */
197e1c44949Sopenharmony_ci  /**
198e1c44949Sopenharmony_ci   * Go to the dial screen and the called number is displayed.
199e1c44949Sopenharmony_ci   *
200e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the called number.
201e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the makeCall.
202e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
203e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
204e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
205e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
206e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
207e1c44949Sopenharmony_ci   * @syscap SystemCapability.Applications.Contacts
208e1c44949Sopenharmony_ci   * @atomicservice
209e1c44949Sopenharmony_ci   * @since 11
210e1c44949Sopenharmony_ci   */
211e1c44949Sopenharmony_ci  function makeCall(phoneNumber: string): Promise<void>;
212e1c44949Sopenharmony_ci
213e1c44949Sopenharmony_ci  /**
214e1c44949Sopenharmony_ci   * Checks whether a call is ongoing.
215e1c44949Sopenharmony_ci   *
216e1c44949Sopenharmony_ci   * @param { AsyncCallback<boolean> } callback - The callback of hasCall. Returns {@code true} if at least one call is
217e1c44949Sopenharmony_ci   * not in the {@link CallState#CALL_STATE_IDLE} state; returns {@code false} otherwise.
218e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
219e1c44949Sopenharmony_ci   * @since 6
220e1c44949Sopenharmony_ci   */
221e1c44949Sopenharmony_ci  function hasCall(callback: AsyncCallback<boolean>): void;
222e1c44949Sopenharmony_ci
223e1c44949Sopenharmony_ci  /**
224e1c44949Sopenharmony_ci   * Checks whether a call is ongoing.
225e1c44949Sopenharmony_ci   *
226e1c44949Sopenharmony_ci   * @returns { Promise<boolean> } Returns {@code true} if at least one call is not
227e1c44949Sopenharmony_ci   * in the {@link CallState#CALL_STATE_IDLE} state; returns {@code false} otherwise.
228e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
229e1c44949Sopenharmony_ci   * @since 6
230e1c44949Sopenharmony_ci   */
231e1c44949Sopenharmony_ci  function hasCall(): Promise<boolean>;
232e1c44949Sopenharmony_ci
233e1c44949Sopenharmony_ci  /**
234e1c44949Sopenharmony_ci   * Checks whether a call is ongoing.
235e1c44949Sopenharmony_ci   *
236e1c44949Sopenharmony_ci   * @returns { boolean } Returns {@code true} if at least one call is not in the {@link CallState#CALL_STATE_IDLE}
237e1c44949Sopenharmony_ci   * state; returns {@code false} otherwise.
238e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
239e1c44949Sopenharmony_ci   * @since 10
240e1c44949Sopenharmony_ci   */
241e1c44949Sopenharmony_ci  function hasCallSync(): boolean;
242e1c44949Sopenharmony_ci
243e1c44949Sopenharmony_ci  /**
244e1c44949Sopenharmony_ci   * Obtains the call state.
245e1c44949Sopenharmony_ci   *
246e1c44949Sopenharmony_ci   * If an incoming call is ringing or waiting, the system returns {@code CallState#CALL_STATE_RINGING}.
247e1c44949Sopenharmony_ci   * If at least one call is in the active, hold, or dialing state, the system returns
248e1c44949Sopenharmony_ci   * {@code CallState#CALL_STATE_OFFHOOK}.
249e1c44949Sopenharmony_ci   * In other cases, the system returns {@code CallState#CALL_STATE_IDLE}.
250e1c44949Sopenharmony_ci   *
251e1c44949Sopenharmony_ci   * @param { AsyncCallback<CallState> } callback - Indicates the callback for getting the call state.
252e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
253e1c44949Sopenharmony_ci   * @since 6
254e1c44949Sopenharmony_ci   */
255e1c44949Sopenharmony_ci  function getCallState(callback: AsyncCallback<CallState>): void;
256e1c44949Sopenharmony_ci
257e1c44949Sopenharmony_ci  /**
258e1c44949Sopenharmony_ci   * Obtains the call state.
259e1c44949Sopenharmony_ci   *
260e1c44949Sopenharmony_ci   * If an incoming call is ringing or waiting, the system returns {@code CallState#CALL_STATE_RINGING}.
261e1c44949Sopenharmony_ci   * If at least one call is in the active, hold, or dialing state, the system returns
262e1c44949Sopenharmony_ci   * {@code CallState#CALL_STATE_OFFHOOK}.
263e1c44949Sopenharmony_ci   * In other cases, the system returns {@code CallState#CALL_STATE_IDLE}.
264e1c44949Sopenharmony_ci   *
265e1c44949Sopenharmony_ci   * @returns { Promise<CallState> } Returns the call state.
266e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
267e1c44949Sopenharmony_ci   * @since 6
268e1c44949Sopenharmony_ci   */
269e1c44949Sopenharmony_ci  function getCallState(): Promise<CallState>;
270e1c44949Sopenharmony_ci
271e1c44949Sopenharmony_ci  /**
272e1c44949Sopenharmony_ci   * Obtains the call state.
273e1c44949Sopenharmony_ci   *
274e1c44949Sopenharmony_ci   * If an incoming call is ringing or waiting, the system returns {@code CallState#CALL_STATE_RINGING}.
275e1c44949Sopenharmony_ci   * If at least one call is in the active, hold, or dialing state, the system returns
276e1c44949Sopenharmony_ci   * {@code CallState#CALL_STATE_OFFHOOK}. In other cases, the system returns {@code CallState#CALL_STATE_IDLE}.
277e1c44949Sopenharmony_ci   *
278e1c44949Sopenharmony_ci   * @returns { CallState } Returns the call state.
279e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
280e1c44949Sopenharmony_ci   * @since 10
281e1c44949Sopenharmony_ci   */
282e1c44949Sopenharmony_ci  function getCallStateSync(): CallState;
283e1c44949Sopenharmony_ci
284e1c44949Sopenharmony_ci  /**
285e1c44949Sopenharmony_ci   * Stops the ringtone.
286e1c44949Sopenharmony_ci   *
287e1c44949Sopenharmony_ci   * If an incoming call is ringing, the phone stops ringing. Otherwise, this method does not function.
288e1c44949Sopenharmony_ci   *
289e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
290e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of muteRinger.
291e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
292e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
293e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
294e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
295e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
296e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
297e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
298e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
299e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
300e1c44949Sopenharmony_ci   * @since 8
301e1c44949Sopenharmony_ci   */
302e1c44949Sopenharmony_ci  function muteRinger(callback: AsyncCallback<void>): void;
303e1c44949Sopenharmony_ci
304e1c44949Sopenharmony_ci  /**
305e1c44949Sopenharmony_ci   * Stops the ringtone.
306e1c44949Sopenharmony_ci   *
307e1c44949Sopenharmony_ci   * If an incoming call is ringing, the phone stops ringing. Otherwise, this method does not function.
308e1c44949Sopenharmony_ci   *
309e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
310e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the muteRinger.
311e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
312e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
313e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
314e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
315e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
316e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
317e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
318e1c44949Sopenharmony_ci   * @since 8
319e1c44949Sopenharmony_ci   */
320e1c44949Sopenharmony_ci  function muteRinger(): Promise<void>;
321e1c44949Sopenharmony_ci
322e1c44949Sopenharmony_ci  /**
323e1c44949Sopenharmony_ci   * Checks whether a device supports voice calls.
324e1c44949Sopenharmony_ci   *
325e1c44949Sopenharmony_ci   * The system checks whether the device has the capability to initiate a circuit switching (CS) or IP multimedia
326e1c44949Sopenharmony_ci   * subsystem domain (IMS) call on a telephone service network. If the device supports only packet switching
327e1c44949Sopenharmony_ci   * (even if the device supports OTT calls), {@code false} is returned.
328e1c44949Sopenharmony_ci   *
329e1c44949Sopenharmony_ci   * @returns { boolean } Returns {@code true} if the device supports voice calls; returns {@code false} otherwise.
330e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
331e1c44949Sopenharmony_ci   * @since 7
332e1c44949Sopenharmony_ci   */
333e1c44949Sopenharmony_ci  function hasVoiceCapability(): boolean;
334e1c44949Sopenharmony_ci
335e1c44949Sopenharmony_ci  /**
336e1c44949Sopenharmony_ci   * Checks whether a phone number is on the emergency number list.
337e1c44949Sopenharmony_ci   *
338e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the phone number to check.
339e1c44949Sopenharmony_ci   * @param { EmergencyNumberOptions } options - Indicates the additional information for emergency numbers.
340e1c44949Sopenharmony_ci   * @param { AsyncCallback<boolean> } callback - Indicates the callback for isEmergencyPhoneNumber.
341e1c44949Sopenharmony_ci   * Returns {@code true} if the phone number is on the emergency number list. Returns {@code false} otherwise.
342e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
343e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
344e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
345e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
346e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
347e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
348e1c44949Sopenharmony_ci   * @since 7
349e1c44949Sopenharmony_ci   */
350e1c44949Sopenharmony_ci  function isEmergencyPhoneNumber(phoneNumber: string, options: EmergencyNumberOptions, callback: AsyncCallback<boolean>): void;
351e1c44949Sopenharmony_ci
352e1c44949Sopenharmony_ci  /**
353e1c44949Sopenharmony_ci   * Checks whether a phone number is on the emergency number list.
354e1c44949Sopenharmony_ci   *
355e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the phone number to check.
356e1c44949Sopenharmony_ci   * @param { EmergencyNumberOptions } options - Indicates the additional information for emergency numbers.
357e1c44949Sopenharmony_ci   * @returns { Promise<boolean> } Returns {@code true} if the phone number is on the emergency number list.
358e1c44949Sopenharmony_ci   * Returns {@code false} otherwise.
359e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
360e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
361e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
362e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
363e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
364e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
365e1c44949Sopenharmony_ci   * @since 7
366e1c44949Sopenharmony_ci   */
367e1c44949Sopenharmony_ci  function isEmergencyPhoneNumber(phoneNumber: string, options?: EmergencyNumberOptions): Promise<boolean>;
368e1c44949Sopenharmony_ci
369e1c44949Sopenharmony_ci  /**
370e1c44949Sopenharmony_ci   * Checks whether a phone number is on the emergency number list.
371e1c44949Sopenharmony_ci   *
372e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the phone number to check.
373e1c44949Sopenharmony_ci   * @param { AsyncCallback<boolean> } callback - Indicates the callback for isEmergencyPhoneNumber.
374e1c44949Sopenharmony_ci   * Returns {@code true} if the phone number is on the emergency number list. Returns {@code false} otherwise.
375e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
376e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
377e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
378e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
379e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
380e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
381e1c44949Sopenharmony_ci   * @since 7
382e1c44949Sopenharmony_ci   */
383e1c44949Sopenharmony_ci  function isEmergencyPhoneNumber(phoneNumber: string, callback: AsyncCallback<boolean>): void;
384e1c44949Sopenharmony_ci
385e1c44949Sopenharmony_ci  /**
386e1c44949Sopenharmony_ci   * Formats a phone number according to the Chinese Telephone Code Plan. Before the formatting,
387e1c44949Sopenharmony_ci   * a phone number is in the format of country code (if any) + 3-digit service provider code
388e1c44949Sopenharmony_ci   * + 4-digit area code + 4-digit subscriber number. After the formatting,
389e1c44949Sopenharmony_ci   * each part is separated by a space.
390e1c44949Sopenharmony_ci   *
391e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the phone number to format.
392e1c44949Sopenharmony_ci   * @param { NumberFormatOptions } options - Indicates the country code option.
393e1c44949Sopenharmony_ci   * @param { AsyncCallback<string> } callback - Indicates the callback to obtain a formatted phone number.
394e1c44949Sopenharmony_ci   * Returns an empty string if the input phone number is invalid.
395e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
396e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
397e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
398e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
399e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
400e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
401e1c44949Sopenharmony_ci   * @since 7
402e1c44949Sopenharmony_ci   */
403e1c44949Sopenharmony_ci  function formatPhoneNumber(phoneNumber: string, options: NumberFormatOptions, callback: AsyncCallback<string>): void;
404e1c44949Sopenharmony_ci
405e1c44949Sopenharmony_ci  /**
406e1c44949Sopenharmony_ci   * Formats a phone number according to the Chinese Telephone Code Plan. Before the formatting,
407e1c44949Sopenharmony_ci   * a phone number is in the format of country code (if any) + 3-digit service provider code
408e1c44949Sopenharmony_ci   * + 4-digit area code + 4-digit subscriber number. After the formatting,
409e1c44949Sopenharmony_ci   * each part is separated by a space.
410e1c44949Sopenharmony_ci   *
411e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the phone number to format.
412e1c44949Sopenharmony_ci   * @param { NumberFormatOptions } options - Indicates the country code option.
413e1c44949Sopenharmony_ci   * @returns { Promise<string> } Returns the phone number after being formatted.
414e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
415e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
416e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
417e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
418e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
419e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
420e1c44949Sopenharmony_ci   * @since 7
421e1c44949Sopenharmony_ci   */
422e1c44949Sopenharmony_ci  function formatPhoneNumber(phoneNumber: string, options?: NumberFormatOptions): Promise<string>;
423e1c44949Sopenharmony_ci
424e1c44949Sopenharmony_ci  /**
425e1c44949Sopenharmony_ci   * Formats a phone number according to the Chinese Telephone Code Plan. Before the formatting,
426e1c44949Sopenharmony_ci   * a phone number is in the format of country code (if any) + 3-digit service provider code
427e1c44949Sopenharmony_ci   * + 4-digit area code + 4-digit subscriber number. After the formatting,
428e1c44949Sopenharmony_ci   * each part is separated by a space.
429e1c44949Sopenharmony_ci   *
430e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the phone number to format.
431e1c44949Sopenharmony_ci   * @param { AsyncCallback<string> } callback - Indicates the callback to obtain a formatted phone number.
432e1c44949Sopenharmony_ci   * Returns an empty string if the input phone number is invalid.
433e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
434e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
435e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
436e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
437e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
438e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
439e1c44949Sopenharmony_ci   * @since 7
440e1c44949Sopenharmony_ci   */
441e1c44949Sopenharmony_ci  function formatPhoneNumber(phoneNumber: string, callback: AsyncCallback<string>): void;
442e1c44949Sopenharmony_ci
443e1c44949Sopenharmony_ci  /**
444e1c44949Sopenharmony_ci   * Formats a phone number into an E.164 representation.
445e1c44949Sopenharmony_ci   *
446e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the phone number to format.
447e1c44949Sopenharmony_ci   * @param { string } countryCode - Indicates a two-digit country code defined in ISO 3166-1.
448e1c44949Sopenharmony_ci   * @param { AsyncCallback<string> } callback - Returns an E.164 number.
449e1c44949Sopenharmony_ci   * Returns an empty string if the input phone number is invalid.
450e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
451e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
452e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
453e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
454e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
455e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
456e1c44949Sopenharmony_ci   * @since 7
457e1c44949Sopenharmony_ci   */
458e1c44949Sopenharmony_ci  function formatPhoneNumberToE164(phoneNumber: string, countryCode: string, callback: AsyncCallback<string>): void;
459e1c44949Sopenharmony_ci
460e1c44949Sopenharmony_ci  /**
461e1c44949Sopenharmony_ci   * Formats a phone number into an E.164 representation.
462e1c44949Sopenharmony_ci   *
463e1c44949Sopenharmony_ci   * @param { string } phoneNumber - Indicates the phone number to format.
464e1c44949Sopenharmony_ci   * @param { string } countryCode - Indicates a two-digit country code defined in ISO 3166-1.
465e1c44949Sopenharmony_ci   * @returns { Promise<string> } Returns an E.164 number.
466e1c44949Sopenharmony_ci   * Returns an empty string if the input phone number is invalid.
467e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
468e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
469e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
470e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
471e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
472e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
473e1c44949Sopenharmony_ci   * @since 7
474e1c44949Sopenharmony_ci   */
475e1c44949Sopenharmony_ci  function formatPhoneNumberToE164(phoneNumber: string, countryCode: string): Promise<string>;
476e1c44949Sopenharmony_ci
477e1c44949Sopenharmony_ci  /**
478e1c44949Sopenharmony_ci   * Answers the incoming call.
479e1c44949Sopenharmony_ci   *
480e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
481e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call to answer.
482e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of answerCall.
483e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
484e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
485e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
486e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
487e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
488e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
489e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
490e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
491e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
492e1c44949Sopenharmony_ci   * @since 9
493e1c44949Sopenharmony_ci   */
494e1c44949Sopenharmony_ci  function answerCall(callId: number, callback: AsyncCallback<void>): void;
495e1c44949Sopenharmony_ci
496e1c44949Sopenharmony_ci  /**
497e1c44949Sopenharmony_ci   * Answers the incoming call.
498e1c44949Sopenharmony_ci   *
499e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
500e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call to answer.
501e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the answerCall.
502e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
503e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
504e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
505e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
506e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
507e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
508e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
509e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
510e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
511e1c44949Sopenharmony_ci   * @since 9
512e1c44949Sopenharmony_ci   */
513e1c44949Sopenharmony_ci  function answerCall(callId?: number): Promise<void>;
514e1c44949Sopenharmony_ci
515e1c44949Sopenharmony_ci  /**
516e1c44949Sopenharmony_ci   * Answers the incoming call without callId.
517e1c44949Sopenharmony_ci   *
518e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
519e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of answerCall.
520e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
521e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
522e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
523e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
524e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
525e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
526e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
527e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
528e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
529e1c44949Sopenharmony_ci   * @since 9
530e1c44949Sopenharmony_ci   */
531e1c44949Sopenharmony_ci  function answerCall(callback: AsyncCallback<void>): void;
532e1c44949Sopenharmony_ci
533e1c44949Sopenharmony_ci  /**
534e1c44949Sopenharmony_ci   * Answers the incoming video call
535e1c44949Sopenharmony_ci   *
536e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
537e1c44949Sopenharmony_ci   * @param { VideoStateType } videoState - Indicates the answer the call with video or voice.
538e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call to answer.
539e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the answerCall.
540e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
541e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
542e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
543e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
544e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
545e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
546e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
547e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
548e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
549e1c44949Sopenharmony_ci   * @since 11
550e1c44949Sopenharmony_ci   */
551e1c44949Sopenharmony_ci  function answerCall(videoState: VideoStateType, callId: number): Promise<void>;
552e1c44949Sopenharmony_ci
553e1c44949Sopenharmony_ci  /**
554e1c44949Sopenharmony_ci   * Hang up the foreground call.
555e1c44949Sopenharmony_ci   *
556e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
557e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call to hangup.
558e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of hangUpCall.
559e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
560e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
561e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
562e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
563e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
564e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
565e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
566e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
567e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
568e1c44949Sopenharmony_ci   * @since 9
569e1c44949Sopenharmony_ci   */
570e1c44949Sopenharmony_ci  function hangUpCall(callId: number, callback: AsyncCallback<void>): void;
571e1c44949Sopenharmony_ci
572e1c44949Sopenharmony_ci  /**
573e1c44949Sopenharmony_ci   * Hang up the foreground call.
574e1c44949Sopenharmony_ci   *
575e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
576e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call to hangup.
577e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the hangUpCall.
578e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
579e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
580e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
581e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
582e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
583e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
584e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
585e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
586e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
587e1c44949Sopenharmony_ci   * @since 9
588e1c44949Sopenharmony_ci   */
589e1c44949Sopenharmony_ci  function hangUpCall(callId?: number): Promise<void>;
590e1c44949Sopenharmony_ci
591e1c44949Sopenharmony_ci  /**
592e1c44949Sopenharmony_ci   * Hang up the foreground call without callId.
593e1c44949Sopenharmony_ci   *
594e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
595e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of hangUpCall.
596e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
597e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
598e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
599e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
600e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
601e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
602e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
603e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
604e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
605e1c44949Sopenharmony_ci   * @since 9
606e1c44949Sopenharmony_ci   */
607e1c44949Sopenharmony_ci  function hangUpCall(callback: AsyncCallback<void>): void;
608e1c44949Sopenharmony_ci
609e1c44949Sopenharmony_ci  /**
610e1c44949Sopenharmony_ci   * Reject the incoming call.
611e1c44949Sopenharmony_ci   *
612e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
613e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call to reject.
614e1c44949Sopenharmony_ci   * @param { RejectMessageOptions } options - Indicates the text message to reject.
615e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of rejectCall.
616e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
617e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
618e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
619e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
620e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
621e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
622e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
623e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
624e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
625e1c44949Sopenharmony_ci   * @since 9
626e1c44949Sopenharmony_ci   */
627e1c44949Sopenharmony_ci  function rejectCall(callId: number, options: RejectMessageOptions, callback: AsyncCallback<void>): void;
628e1c44949Sopenharmony_ci
629e1c44949Sopenharmony_ci  /**
630e1c44949Sopenharmony_ci   * Reject the incoming call.
631e1c44949Sopenharmony_ci   *
632e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
633e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call to reject.
634e1c44949Sopenharmony_ci   * @param { RejectMessageOptions } options - Indicates the text message to reject.
635e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the rejectCall.
636e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
637e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
638e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
639e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
640e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
641e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
642e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
643e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
644e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
645e1c44949Sopenharmony_ci   * @since 9
646e1c44949Sopenharmony_ci   */
647e1c44949Sopenharmony_ci  function rejectCall(callId?: number, options?: RejectMessageOptions): Promise<void>;
648e1c44949Sopenharmony_ci
649e1c44949Sopenharmony_ci  /**
650e1c44949Sopenharmony_ci   * Reject the incoming call.
651e1c44949Sopenharmony_ci   *
652e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
653e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call to reject.
654e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of rejectCall.
655e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
656e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
657e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
658e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
659e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
660e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
661e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
662e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
663e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
664e1c44949Sopenharmony_ci   * @since 9
665e1c44949Sopenharmony_ci   */
666e1c44949Sopenharmony_ci  function rejectCall(callId: number, callback: AsyncCallback<void>): void;
667e1c44949Sopenharmony_ci
668e1c44949Sopenharmony_ci  /**
669e1c44949Sopenharmony_ci   * Reject the incoming call without callId.
670e1c44949Sopenharmony_ci   *
671e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
672e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of rejectCall.
673e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
674e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
675e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
676e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
677e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
678e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
679e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
680e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
681e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
682e1c44949Sopenharmony_ci   * @since 9
683e1c44949Sopenharmony_ci   */
684e1c44949Sopenharmony_ci  function rejectCall(callback: AsyncCallback<void>): void;
685e1c44949Sopenharmony_ci
686e1c44949Sopenharmony_ci  /**
687e1c44949Sopenharmony_ci   * Reject the incoming call without callId.
688e1c44949Sopenharmony_ci   *
689e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
690e1c44949Sopenharmony_ci   * @param { RejectMessageOptions } options - Indicates the text message to reject.
691e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of rejectCall.
692e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
693e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
694e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
695e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
696e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
697e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
698e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
699e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
700e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
701e1c44949Sopenharmony_ci   * @since 9
702e1c44949Sopenharmony_ci   */
703e1c44949Sopenharmony_ci  function rejectCall(options: RejectMessageOptions, callback: AsyncCallback<void>): void;
704e1c44949Sopenharmony_ci
705e1c44949Sopenharmony_ci  /**
706e1c44949Sopenharmony_ci   * Keep a call on hold.
707e1c44949Sopenharmony_ci   *
708e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
709e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
710e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of holdCall.
711e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
712e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
713e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
714e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
715e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
716e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
717e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
718e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
719e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
720e1c44949Sopenharmony_ci   * @since 7
721e1c44949Sopenharmony_ci   */
722e1c44949Sopenharmony_ci  function holdCall(callId: number, callback: AsyncCallback<void>): void;
723e1c44949Sopenharmony_ci
724e1c44949Sopenharmony_ci  /**
725e1c44949Sopenharmony_ci   * Keep a call on hold.
726e1c44949Sopenharmony_ci   *
727e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
728e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
729e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the holdCall.
730e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
731e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
732e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
733e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
734e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
735e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
736e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
737e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
738e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
739e1c44949Sopenharmony_ci   * @since 7
740e1c44949Sopenharmony_ci   */
741e1c44949Sopenharmony_ci  function holdCall(callId: number): Promise<void>;
742e1c44949Sopenharmony_ci
743e1c44949Sopenharmony_ci  /**
744e1c44949Sopenharmony_ci   * Cancel call hold status.
745e1c44949Sopenharmony_ci   *
746e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
747e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
748e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of unHoldCall.
749e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
750e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
751e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
752e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
753e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
754e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
755e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
756e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
757e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
758e1c44949Sopenharmony_ci   * @since 7
759e1c44949Sopenharmony_ci   */
760e1c44949Sopenharmony_ci  function unHoldCall(callId: number, callback: AsyncCallback<void>): void;
761e1c44949Sopenharmony_ci
762e1c44949Sopenharmony_ci  /**
763e1c44949Sopenharmony_ci   * Keep a call on hold.
764e1c44949Sopenharmony_ci   *
765e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
766e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
767e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the unHoldCall.
768e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
769e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
770e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
771e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
772e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
773e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
774e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
775e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
776e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
777e1c44949Sopenharmony_ci   * @since 7
778e1c44949Sopenharmony_ci   */
779e1c44949Sopenharmony_ci  function unHoldCall(callId: number): Promise<void>;
780e1c44949Sopenharmony_ci
781e1c44949Sopenharmony_ci  /**
782e1c44949Sopenharmony_ci   * Switch call.
783e1c44949Sopenharmony_ci   *
784e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
785e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
786e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of switchCall.
787e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
788e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
789e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
790e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
791e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
792e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
793e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
794e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
795e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
796e1c44949Sopenharmony_ci   * @since 7
797e1c44949Sopenharmony_ci   */
798e1c44949Sopenharmony_ci  function switchCall(callId: number, callback: AsyncCallback<void>): void;
799e1c44949Sopenharmony_ci
800e1c44949Sopenharmony_ci  /**
801e1c44949Sopenharmony_ci   * Switch call.
802e1c44949Sopenharmony_ci   *
803e1c44949Sopenharmony_ci   * @permission ohos.permission.ANSWER_CALL
804e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
805e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the switchCall.
806e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
807e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
808e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
809e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
810e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
811e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
812e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
813e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
814e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
815e1c44949Sopenharmony_ci   * @since 7
816e1c44949Sopenharmony_ci   */
817e1c44949Sopenharmony_ci  function switchCall(callId: number): Promise<void>;
818e1c44949Sopenharmony_ci
819e1c44949Sopenharmony_ci  /**
820e1c44949Sopenharmony_ci   * Merge calls, merge two calls into conference calls.
821e1c44949Sopenharmony_ci   *
822e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
823e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of combineConference.
824e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
825e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
826e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
827e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
828e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
829e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
830e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300007 - The number of conference calls exceeds the limit.
831e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
832e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
833e1c44949Sopenharmony_ci   * @since 11
834e1c44949Sopenharmony_ci   */
835e1c44949Sopenharmony_ci  function combineConference(callId: number, callback: AsyncCallback<void>): void;
836e1c44949Sopenharmony_ci
837e1c44949Sopenharmony_ci  /**
838e1c44949Sopenharmony_ci   * Merge calls, merge two calls into conference calls.
839e1c44949Sopenharmony_ci   *
840e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
841e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the combineConference.
842e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
843e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
844e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
845e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
846e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
847e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
848e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300007 - The number of conference calls exceeds the limit.
849e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
850e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
851e1c44949Sopenharmony_ci   * @since 11
852e1c44949Sopenharmony_ci   */
853e1c44949Sopenharmony_ci  function combineConference(callId: number): Promise<void>;
854e1c44949Sopenharmony_ci
855e1c44949Sopenharmony_ci  /**
856e1c44949Sopenharmony_ci   * Get the main call Id.
857e1c44949Sopenharmony_ci   *
858e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
859e1c44949Sopenharmony_ci   * @param { AsyncCallback<number> } callback - Indicates the callback for getting the main call id.
860e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
861e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
862e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
863e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
864e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
865e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
866e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
867e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
868e1c44949Sopenharmony_ci   * @since 7
869e1c44949Sopenharmony_ci   */
870e1c44949Sopenharmony_ci  function getMainCallId(callId: number, callback: AsyncCallback<number>): void;
871e1c44949Sopenharmony_ci
872e1c44949Sopenharmony_ci  /**
873e1c44949Sopenharmony_ci   * Get the main call Id.
874e1c44949Sopenharmony_ci   *
875e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
876e1c44949Sopenharmony_ci   * @returns { Promise<number> } Returns the main call id.
877e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
878e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
879e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
880e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
881e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
882e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
883e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
884e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
885e1c44949Sopenharmony_ci   * @since 7
886e1c44949Sopenharmony_ci   */
887e1c44949Sopenharmony_ci  function getMainCallId(callId: number): Promise<number>;
888e1c44949Sopenharmony_ci
889e1c44949Sopenharmony_ci  /**
890e1c44949Sopenharmony_ci   * Get the list of sub-call Ids.
891e1c44949Sopenharmony_ci   *
892e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
893e1c44949Sopenharmony_ci   * @param { AsyncCallback<Array<string>> } callback - Indicates the callback for getting the list of sub call ids.
894e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
895e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
896e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
897e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
898e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
899e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
900e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
901e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
902e1c44949Sopenharmony_ci   * @since 7
903e1c44949Sopenharmony_ci   */
904e1c44949Sopenharmony_ci  function getSubCallIdList(callId: number, callback: AsyncCallback<Array<string>>): void;
905e1c44949Sopenharmony_ci
906e1c44949Sopenharmony_ci  /**
907e1c44949Sopenharmony_ci   * Get the list of sub-call Ids.
908e1c44949Sopenharmony_ci   *
909e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
910e1c44949Sopenharmony_ci   * @returns { Promise<Array<string>> } Returns the list of sub call ids.
911e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
912e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
913e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
914e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
915e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
916e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
917e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
918e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
919e1c44949Sopenharmony_ci   * @since 7
920e1c44949Sopenharmony_ci   */
921e1c44949Sopenharmony_ci  function getSubCallIdList(callId: number): Promise<Array<string>>;
922e1c44949Sopenharmony_ci
923e1c44949Sopenharmony_ci  /**
924e1c44949Sopenharmony_ci   * Get the call Id list of the conference.
925e1c44949Sopenharmony_ci   *
926e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
927e1c44949Sopenharmony_ci   * @param { AsyncCallback<Array<string>> } callback - Indicates the callback for getting
928e1c44949Sopenharmony_ci   * the call id list of conference calls.
929e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
930e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
931e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
932e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
933e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
934e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
935e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
936e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
937e1c44949Sopenharmony_ci   * @since 7
938e1c44949Sopenharmony_ci   */
939e1c44949Sopenharmony_ci  function getCallIdListForConference(callId: number, callback: AsyncCallback<Array<string>>): void;
940e1c44949Sopenharmony_ci
941e1c44949Sopenharmony_ci  /**
942e1c44949Sopenharmony_ci   * Get the call Id list of the conference.
943e1c44949Sopenharmony_ci   *
944e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
945e1c44949Sopenharmony_ci   * @returns { Promise<Array<string>> } Returns the call id list of conference calls.
946e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
947e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
948e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
949e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
950e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
951e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
952e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
953e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
954e1c44949Sopenharmony_ci   * @since 7
955e1c44949Sopenharmony_ci   */
956e1c44949Sopenharmony_ci  function getCallIdListForConference(callId: number): Promise<Array<string>>;
957e1c44949Sopenharmony_ci
958e1c44949Sopenharmony_ci  /**
959e1c44949Sopenharmony_ci   * Get call waiting status.
960e1c44949Sopenharmony_ci   *
961e1c44949Sopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
962e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
963e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
964e1c44949Sopenharmony_ci   * @param { AsyncCallback<CallWaitingStatus> } callback - Indicates the callback for getting the call waiting status.
965e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
966e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
967e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
968e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
969e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
970e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
971e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
972e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
973e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
974e1c44949Sopenharmony_ci   * @since 7
975e1c44949Sopenharmony_ci   */
976e1c44949Sopenharmony_ci  function getCallWaitingStatus(slotId: number, callback: AsyncCallback<CallWaitingStatus>): void;
977e1c44949Sopenharmony_ci
978e1c44949Sopenharmony_ci  /**
979e1c44949Sopenharmony_ci   * Get call waiting status.
980e1c44949Sopenharmony_ci   *
981e1c44949Sopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
982e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
983e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
984e1c44949Sopenharmony_ci   * @returns { Promise<CallWaitingStatus> } Returns the callback for getting the call waiting status.
985e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
986e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
987e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
988e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
989e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
990e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
991e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
992e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
993e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
994e1c44949Sopenharmony_ci   * @since 7
995e1c44949Sopenharmony_ci   */
996e1c44949Sopenharmony_ci  function getCallWaitingStatus(slotId: number): Promise<CallWaitingStatus>;
997e1c44949Sopenharmony_ci
998e1c44949Sopenharmony_ci  /**
999e1c44949Sopenharmony_ci   * Set call waiting.
1000e1c44949Sopenharmony_ci   *
1001e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1002e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
1003e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
1004e1c44949Sopenharmony_ci   * @param { boolean } activate - Indicates whether to activate or call wait.
1005e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of setCallWaiting.
1006e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1007e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1008e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1009e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1010e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1011e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1012e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1013e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1014e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1015e1c44949Sopenharmony_ci   * @since 7
1016e1c44949Sopenharmony_ci   */
1017e1c44949Sopenharmony_ci  function setCallWaiting(slotId: number, activate: boolean, callback: AsyncCallback<void>): void;
1018e1c44949Sopenharmony_ci
1019e1c44949Sopenharmony_ci  /**
1020e1c44949Sopenharmony_ci   * Set call waiting.
1021e1c44949Sopenharmony_ci   *
1022e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1023e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
1024e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
1025e1c44949Sopenharmony_ci   * @param { boolean } activate - Indicates whether to activate or call wait.
1026e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the setCallWaiting.
1027e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1028e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1029e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1030e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1031e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1032e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1033e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1034e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1035e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1036e1c44949Sopenharmony_ci   * @since 7
1037e1c44949Sopenharmony_ci   */
1038e1c44949Sopenharmony_ci  function setCallWaiting(slotId: number, activate: boolean): Promise<void>;
1039e1c44949Sopenharmony_ci
1040e1c44949Sopenharmony_ci  /**
1041e1c44949Sopenharmony_ci   * Start DTMF(Dual Tone Multi Frequency).
1042e1c44949Sopenharmony_ci   *
1043e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
1044e1c44949Sopenharmony_ci   * @param { string } character - Indicates the characters sent.
1045e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of startDTMF.
1046e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1047e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1048e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1049e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1050e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1051e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1052e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1053e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1054e1c44949Sopenharmony_ci   * @since 7
1055e1c44949Sopenharmony_ci   */
1056e1c44949Sopenharmony_ci  function startDTMF(callId: number, character: string, callback: AsyncCallback<void>): void;
1057e1c44949Sopenharmony_ci
1058e1c44949Sopenharmony_ci  /**
1059e1c44949Sopenharmony_ci   * Start DTMF(Dual Tone Multi Frequency).
1060e1c44949Sopenharmony_ci   *
1061e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
1062e1c44949Sopenharmony_ci   * @param { string } character - Indicates the characters sent.
1063e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the startDTMF.
1064e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1065e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1066e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1067e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1068e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1069e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1070e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1071e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1072e1c44949Sopenharmony_ci   * @since 7
1073e1c44949Sopenharmony_ci   */
1074e1c44949Sopenharmony_ci  function startDTMF(callId: number, character: string): Promise<void>;
1075e1c44949Sopenharmony_ci
1076e1c44949Sopenharmony_ci  /**
1077e1c44949Sopenharmony_ci   * Stop DTMF(Dual Tone Multi Frequency).
1078e1c44949Sopenharmony_ci   *
1079e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
1080e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of stopDTMF.
1081e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1082e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1083e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1084e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1085e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1086e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1087e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1088e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1089e1c44949Sopenharmony_ci   * @since 7
1090e1c44949Sopenharmony_ci   */
1091e1c44949Sopenharmony_ci  function stopDTMF(callId: number, callback: AsyncCallback<void>): void;
1092e1c44949Sopenharmony_ci
1093e1c44949Sopenharmony_ci  /**
1094e1c44949Sopenharmony_ci   * Stop DTMF(Dual Tone Multi Frequency).
1095e1c44949Sopenharmony_ci   *
1096e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
1097e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the stopDTMF.
1098e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1099e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1100e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1101e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1102e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1103e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1104e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1105e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1106e1c44949Sopenharmony_ci   * @since 7
1107e1c44949Sopenharmony_ci   */
1108e1c44949Sopenharmony_ci  function stopDTMF(callId: number): Promise<void>;
1109e1c44949Sopenharmony_ci
1110e1c44949Sopenharmony_ci  /**
1111e1c44949Sopenharmony_ci   * Continue post-dial DTMF(Dual Tone Multi Frequency).
1112e1c44949Sopenharmony_ci   *
1113e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1114e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
1115e1c44949Sopenharmony_ci   * @param { boolean } proceed - Indicates whether to continue the post-dial DTMF.
1116e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of postDialProceed.
1117e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1118e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1119e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1120e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1121e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1122e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1123e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1124e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1125e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1126e1c44949Sopenharmony_ci   * @since 11
1127e1c44949Sopenharmony_ci   */
1128e1c44949Sopenharmony_ci  function postDialProceed(callId: number, proceed: boolean, callback: AsyncCallback<void>): void;
1129e1c44949Sopenharmony_ci
1130e1c44949Sopenharmony_ci  /**
1131e1c44949Sopenharmony_ci   * Continue post-dial DTMF(Dual Tone Multi Frequency).
1132e1c44949Sopenharmony_ci   *
1133e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1134e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
1135e1c44949Sopenharmony_ci   * @param { boolean } proceed - Indicates whether to continue the post-dial DTMF.
1136e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the postDialProceed.
1137e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1138e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1139e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1140e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1141e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1142e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1143e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1144e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1145e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1146e1c44949Sopenharmony_ci   * @since 11
1147e1c44949Sopenharmony_ci   */
1148e1c44949Sopenharmony_ci  function postDialProceed(callId: number, proceed: boolean): Promise<void>;
1149e1c44949Sopenharmony_ci
1150e1c44949Sopenharmony_ci  /**
1151e1c44949Sopenharmony_ci   * Judge whether the emergency call is in progress.
1152e1c44949Sopenharmony_ci   *
1153e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1154e1c44949Sopenharmony_ci   * @param { AsyncCallback<boolean> } callback - The callback of isInEmergencyCall.
1155e1c44949Sopenharmony_ci   * Returns {@code true} if the call is in emergency; returns {@code false} otherwise.
1156e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1157e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1158e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1159e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1160e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1161e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1162e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1163e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1164e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1165e1c44949Sopenharmony_ci   * @since 7
1166e1c44949Sopenharmony_ci   */
1167e1c44949Sopenharmony_ci  function isInEmergencyCall(callback: AsyncCallback<boolean>): void;
1168e1c44949Sopenharmony_ci
1169e1c44949Sopenharmony_ci  /**
1170e1c44949Sopenharmony_ci   * Judge whether the emergency call is in progress.
1171e1c44949Sopenharmony_ci   *
1172e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1173e1c44949Sopenharmony_ci   * @returns { Promise<boolean> } Returns {@code true} if the call is in emergency; returns {@code false} otherwise.
1174e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1175e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1176e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1177e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1178e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1179e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1180e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1181e1c44949Sopenharmony_ci   * @since 7
1182e1c44949Sopenharmony_ci   */
1183e1c44949Sopenharmony_ci  function isInEmergencyCall(): Promise<boolean>;
1184e1c44949Sopenharmony_ci
1185e1c44949Sopenharmony_ci  /**
1186e1c44949Sopenharmony_ci   * Subscribe to the callDetailsChange event.
1187e1c44949Sopenharmony_ci   *
1188e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1189e1c44949Sopenharmony_ci   * @param { 'callDetailsChange' } type - Event type. Indicates the callDetailsChange event to be subscribed to.
1190e1c44949Sopenharmony_ci   * @param { Callback<CallAttributeOptions> } callback - Indicates the callback for getting the result of call details.
1191e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1192e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1193e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1194e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1195e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1196e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1197e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1198e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1199e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1200e1c44949Sopenharmony_ci   * @since 7
1201e1c44949Sopenharmony_ci   */
1202e1c44949Sopenharmony_ci  function on(type: 'callDetailsChange', callback: Callback<CallAttributeOptions>): void;
1203e1c44949Sopenharmony_ci
1204e1c44949Sopenharmony_ci  /**
1205e1c44949Sopenharmony_ci   * Unsubscribe from the callDetailsChange event.
1206e1c44949Sopenharmony_ci   *
1207e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1208e1c44949Sopenharmony_ci   * @param { 'callDetailsChange' } type - Event type. Indicates the callDetailsChange event to unsubscribe from.
1209e1c44949Sopenharmony_ci   * @param { Callback<CallAttributeOptions> } callback - Indicates the callback to unsubscribe from
1210e1c44949Sopenharmony_ci   * the callDetailsChange event.
1211e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1212e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1213e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1214e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1215e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1216e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1217e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1218e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1219e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1220e1c44949Sopenharmony_ci   * @since 7
1221e1c44949Sopenharmony_ci   */
1222e1c44949Sopenharmony_ci  function off(type: 'callDetailsChange', callback?: Callback<CallAttributeOptions>): void;
1223e1c44949Sopenharmony_ci
1224e1c44949Sopenharmony_ci  /**
1225e1c44949Sopenharmony_ci   * Subscribe to the callEventChange event.
1226e1c44949Sopenharmony_ci   *
1227e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1228e1c44949Sopenharmony_ci   * @param { 'callEventChange' } type - Event type. Indicates the callEventChange event to be subscribed to.
1229e1c44949Sopenharmony_ci   * @param { Callback<CallEventOptions> } callback - Indicates the callback for getting the call event id.
1230e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1231e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1232e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1233e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1234e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1235e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1236e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1237e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1238e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1239e1c44949Sopenharmony_ci   * @since 8
1240e1c44949Sopenharmony_ci   */
1241e1c44949Sopenharmony_ci  function on(type: 'callEventChange', callback: Callback<CallEventOptions>): void;
1242e1c44949Sopenharmony_ci
1243e1c44949Sopenharmony_ci  /**
1244e1c44949Sopenharmony_ci   * Unsubscribe from the callEventChange event.
1245e1c44949Sopenharmony_ci   *
1246e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1247e1c44949Sopenharmony_ci   * @param { 'callEventChange' } type - Event type. Indicates the callEventChange event to unsubscribe from.
1248e1c44949Sopenharmony_ci   * @param { Callback<CallEventOptions> } callback - Indicates the callback to unsubscribe from the callEventChange event.
1249e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1250e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1251e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1252e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1253e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1254e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1255e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1256e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1257e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1258e1c44949Sopenharmony_ci   * @since 8
1259e1c44949Sopenharmony_ci   */
1260e1c44949Sopenharmony_ci  function off(type: 'callEventChange', callback?: Callback<CallEventOptions>): void;
1261e1c44949Sopenharmony_ci
1262e1c44949Sopenharmony_ci  /**
1263e1c44949Sopenharmony_ci   * Subscribe to the callDisconnectedCause event.
1264e1c44949Sopenharmony_ci   *
1265e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1266e1c44949Sopenharmony_ci   * @param { 'callDisconnectedCause' } type - Event type. Indicates the callDisconnectedCause event to be subscribed to.
1267e1c44949Sopenharmony_ci   * @param { Callback<DisconnectedDetails> } callback - Indicates the callback for getting the call disconnection reason.
1268e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1269e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1270e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1271e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1272e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1273e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1274e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1275e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1276e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1277e1c44949Sopenharmony_ci   * @since 8
1278e1c44949Sopenharmony_ci   */
1279e1c44949Sopenharmony_ci  function on(type: 'callDisconnectedCause', callback: Callback<DisconnectedDetails>): void;
1280e1c44949Sopenharmony_ci
1281e1c44949Sopenharmony_ci  /**
1282e1c44949Sopenharmony_ci   * Unsubscribe from the callDisconnectedCause event.
1283e1c44949Sopenharmony_ci   *
1284e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1285e1c44949Sopenharmony_ci   * @param { 'callDisconnectedCause' } type - Event type. Indicates the callDisconnectedCause event to unsubscribe from.
1286e1c44949Sopenharmony_ci   * @param { Callback<DisconnectedDetails> } callback - Indicates the callback used to cancel
1287e1c44949Sopenharmony_ci   * the registration monitoring for obtaining the call end reason.
1288e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1289e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1290e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1291e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1292e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1293e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1294e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1295e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1296e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1297e1c44949Sopenharmony_ci   * @since 8
1298e1c44949Sopenharmony_ci   */
1299e1c44949Sopenharmony_ci  function off(type: 'callDisconnectedCause', callback?: Callback<DisconnectedDetails>): void;
1300e1c44949Sopenharmony_ci
1301e1c44949Sopenharmony_ci  /**
1302e1c44949Sopenharmony_ci   * Subscribe to the mmiCodeResult event.
1303e1c44949Sopenharmony_ci   *
1304e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1305e1c44949Sopenharmony_ci   * @param { 'mmiCodeResult' } type - Event type. Indicates the mmiCodeResult event to be subscribed to.
1306e1c44949Sopenharmony_ci   * @param { Callback<MmiCodeResults> } callback - Indicates the callback for getting the result of MMI code.
1307e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1308e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1309e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1310e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1311e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1312e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1313e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1314e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1315e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1316e1c44949Sopenharmony_ci   * @since 9
1317e1c44949Sopenharmony_ci   */
1318e1c44949Sopenharmony_ci  function on(type: 'mmiCodeResult', callback: Callback<MmiCodeResults>): void;
1319e1c44949Sopenharmony_ci
1320e1c44949Sopenharmony_ci  /**
1321e1c44949Sopenharmony_ci   * Unsubscribe from the mmiCodeResult event.
1322e1c44949Sopenharmony_ci   *
1323e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1324e1c44949Sopenharmony_ci   * @param { 'mmiCodeResult' } type - Event type. Indicates the mmiCodeResult event to unsubscribe from.
1325e1c44949Sopenharmony_ci   * @param { Callback<MmiCodeResults> } callback - Indicates the callback used to cancel getting mmicode registered listening.
1326e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1327e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1328e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1329e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1330e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1331e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1332e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1333e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1334e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1335e1c44949Sopenharmony_ci   * @since 9
1336e1c44949Sopenharmony_ci   */
1337e1c44949Sopenharmony_ci  function off(type: 'mmiCodeResult', callback?: Callback<MmiCodeResults>): void;
1338e1c44949Sopenharmony_ci
1339e1c44949Sopenharmony_ci  /**
1340e1c44949Sopenharmony_ci   * Subscribe to the audioDeviceChange event.
1341e1c44949Sopenharmony_ci   *
1342e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1343e1c44949Sopenharmony_ci   * @param { 'audioDeviceChange' } type - Event type. Indicates the audioDeviceChange event to be subscribed to.
1344e1c44949Sopenharmony_ci   * @param { Callback<AudioDeviceCallbackInfo> } callback - Indicates the callback for getting the result of Current AudioDevice.
1345e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1346e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1347e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1348e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1349e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1350e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1351e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1352e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1353e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1354e1c44949Sopenharmony_ci   * @since 10
1355e1c44949Sopenharmony_ci   */
1356e1c44949Sopenharmony_ci  function on(type: 'audioDeviceChange', callback: Callback<AudioDeviceCallbackInfo>): void;
1357e1c44949Sopenharmony_ci
1358e1c44949Sopenharmony_ci  /**
1359e1c44949Sopenharmony_ci   * Unsubscribe from the audioDeviceChange event.
1360e1c44949Sopenharmony_ci   *
1361e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1362e1c44949Sopenharmony_ci   * @param { 'audioDeviceChange' } type - Event type. Indicates the audioDeviceChange event to unsubscribe from.
1363e1c44949Sopenharmony_ci   * @param { Callback<AudioDeviceCallbackInfo> } callback - Indicates the callback for getting the result of Current AudioDevice.
1364e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1365e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1366e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1367e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1368e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1369e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1370e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1371e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1372e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1373e1c44949Sopenharmony_ci   * @since 10
1374e1c44949Sopenharmony_ci   */
1375e1c44949Sopenharmony_ci  function off(type: 'audioDeviceChange', callback?: Callback<AudioDeviceCallbackInfo>): void;
1376e1c44949Sopenharmony_ci
1377e1c44949Sopenharmony_ci  /**
1378e1c44949Sopenharmony_ci   * Subscribe to the postDialDelay event.
1379e1c44949Sopenharmony_ci   *
1380e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1381e1c44949Sopenharmony_ci   * @param { 'postDialDelay' } type - Event type. Indicates the postDialDelay event to be subscribed to.
1382e1c44949Sopenharmony_ci   * @param { Callback<string> } callback - Indicates the callback for getting the result of post-dial string.
1383e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1384e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1385e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1386e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1387e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1388e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1389e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1390e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1391e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1392e1c44949Sopenharmony_ci   * @since 11
1393e1c44949Sopenharmony_ci   */
1394e1c44949Sopenharmony_ci  function on(type: 'postDialDelay', callback: Callback<string>): void;
1395e1c44949Sopenharmony_ci
1396e1c44949Sopenharmony_ci  /**
1397e1c44949Sopenharmony_ci   * Unsubscribe from the postDialDelay event.
1398e1c44949Sopenharmony_ci   *
1399e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1400e1c44949Sopenharmony_ci   * @param { 'postDialDelay' } type - Event type. Indicates the postDialDelay event to unsubscribe from.
1401e1c44949Sopenharmony_ci   * @param { Callback<string> } callback - Indicates the callback for getting the result of post-dial string.
1402e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1403e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1404e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1405e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1406e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1407e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1408e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1409e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1410e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1411e1c44949Sopenharmony_ci   * @since 11
1412e1c44949Sopenharmony_ci   */
1413e1c44949Sopenharmony_ci  function off(type: 'postDialDelay', callback?: Callback<string>): void;
1414e1c44949Sopenharmony_ci
1415e1c44949Sopenharmony_ci  /**
1416e1c44949Sopenharmony_ci   * Judge whether to allow another new call.
1417e1c44949Sopenharmony_ci   *
1418e1c44949Sopenharmony_ci   * @param { AsyncCallback<boolean> } callback - The callback of isNewCallAllowed. Returns {@code true} if
1419e1c44949Sopenharmony_ci   * the device currently allows new calls; returns {@code false} otherwise.
1420e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1421e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1422e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1423e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1424e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1425e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1426e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1427e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1428e1c44949Sopenharmony_ci   * @since 8
1429e1c44949Sopenharmony_ci   */
1430e1c44949Sopenharmony_ci  function isNewCallAllowed(callback: AsyncCallback<boolean>): void;
1431e1c44949Sopenharmony_ci
1432e1c44949Sopenharmony_ci  /**
1433e1c44949Sopenharmony_ci   * Judge whether to allow another new call.
1434e1c44949Sopenharmony_ci   *
1435e1c44949Sopenharmony_ci   * @returns { Promise<boolean> } Returns {@code true} If the device currently allows new calls.
1436e1c44949Sopenharmony_ci   * Returns {@code false} otherwise.
1437e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1438e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1439e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1440e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1441e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1442e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1443e1c44949Sopenharmony_ci   * @since 8
1444e1c44949Sopenharmony_ci   */
1445e1c44949Sopenharmony_ci  function isNewCallAllowed(): Promise<boolean>;
1446e1c44949Sopenharmony_ci
1447e1c44949Sopenharmony_ci  /**
1448e1c44949Sopenharmony_ci   * Split conference call.
1449e1c44949Sopenharmony_ci   *
1450e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
1451e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of separateConference.
1452e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1453e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1454e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1455e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1456e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1457e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300008 - Conference call is not active.
1458e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1459e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1460e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1461e1c44949Sopenharmony_ci   * @since 11
1462e1c44949Sopenharmony_ci   */
1463e1c44949Sopenharmony_ci  function separateConference(callId: number, callback: AsyncCallback<void>): void;
1464e1c44949Sopenharmony_ci
1465e1c44949Sopenharmony_ci  /**
1466e1c44949Sopenharmony_ci   * Split conference call.
1467e1c44949Sopenharmony_ci   *
1468e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
1469e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the separateConference.
1470e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1471e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1472e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1473e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1474e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1475e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300008 - Conference call is not active.
1476e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1477e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1478e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1479e1c44949Sopenharmony_ci   * @since 11
1480e1c44949Sopenharmony_ci   */
1481e1c44949Sopenharmony_ci  function separateConference(callId: number): Promise<void>;
1482e1c44949Sopenharmony_ci
1483e1c44949Sopenharmony_ci  /**
1484e1c44949Sopenharmony_ci   * Get call barring status.
1485e1c44949Sopenharmony_ci   *
1486e1c44949Sopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
1487e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
1488e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
1489e1c44949Sopenharmony_ci   * @param { CallRestrictionType } type - Indicates which type of call restriction to obtain.
1490e1c44949Sopenharmony_ci   * @param { AsyncCallback<RestrictionStatus> } callback - Indicates the callback for getting the call restriction status.
1491e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1492e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1493e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1494e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1495e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1496e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1497e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1498e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1499e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1500e1c44949Sopenharmony_ci   * @since 8
1501e1c44949Sopenharmony_ci   */
1502e1c44949Sopenharmony_ci  function getCallRestrictionStatus(slotId: number, type: CallRestrictionType, callback: AsyncCallback<RestrictionStatus>): void;
1503e1c44949Sopenharmony_ci
1504e1c44949Sopenharmony_ci  /**
1505e1c44949Sopenharmony_ci   * Get call barring status.
1506e1c44949Sopenharmony_ci   *
1507e1c44949Sopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
1508e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
1509e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
1510e1c44949Sopenharmony_ci   * @param { CallRestrictionType } type - Indicates which type of call restriction to obtain.
1511e1c44949Sopenharmony_ci   * @returns { Promise<RestrictionStatus> } Returns the call restriction status.
1512e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1513e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1514e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1515e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1516e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1517e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1518e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1519e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1520e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1521e1c44949Sopenharmony_ci   * @since 8
1522e1c44949Sopenharmony_ci   */
1523e1c44949Sopenharmony_ci  function getCallRestrictionStatus(slotId: number, type: CallRestrictionType): Promise<RestrictionStatus>;
1524e1c44949Sopenharmony_ci
1525e1c44949Sopenharmony_ci  /**
1526e1c44949Sopenharmony_ci   * Set call barring status.
1527e1c44949Sopenharmony_ci   *
1528e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1529e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
1530e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
1531e1c44949Sopenharmony_ci   * @param { CallRestrictionInfo } info - Indicates the set call restriction information.
1532e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of setCallRestriction.
1533e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1534e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1535e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1536e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1537e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1538e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1539e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1540e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1541e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1542e1c44949Sopenharmony_ci   * @since 8
1543e1c44949Sopenharmony_ci   */
1544e1c44949Sopenharmony_ci  function setCallRestriction(slotId: number, info: CallRestrictionInfo, callback: AsyncCallback<void>): void;
1545e1c44949Sopenharmony_ci
1546e1c44949Sopenharmony_ci  /**
1547e1c44949Sopenharmony_ci   * Set call barring status.
1548e1c44949Sopenharmony_ci   *
1549e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1550e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
1551e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
1552e1c44949Sopenharmony_ci   * @param { CallRestrictionInfo } info - Indicates the set call restriction information.
1553e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the setCallRestriction.
1554e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1555e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1556e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1557e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1558e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1559e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1560e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1561e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1562e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1563e1c44949Sopenharmony_ci   * @since 8
1564e1c44949Sopenharmony_ci   */
1565e1c44949Sopenharmony_ci  function setCallRestriction(slotId: number, info: CallRestrictionInfo): Promise<void>;
1566e1c44949Sopenharmony_ci
1567e1c44949Sopenharmony_ci  /**
1568e1c44949Sopenharmony_ci   * Set call barring password.
1569e1c44949Sopenharmony_ci   *
1570e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1571e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
1572e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
1573e1c44949Sopenharmony_ci   * @param { string } oldPassword - Indicates the call restriction old password.
1574e1c44949Sopenharmony_ci   * @param { string } newPassword - Indicates the call restriction new password.
1575e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of setCallRestrictionPassword.
1576e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1577e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1578e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1579e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1580e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1581e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1582e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1583e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1584e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1585e1c44949Sopenharmony_ci   * @since 10
1586e1c44949Sopenharmony_ci   */
1587e1c44949Sopenharmony_ci  function setCallRestrictionPassword(slotId: number, oldPassword: string, newPassword: string, callback: AsyncCallback<void>): void;
1588e1c44949Sopenharmony_ci
1589e1c44949Sopenharmony_ci  /**
1590e1c44949Sopenharmony_ci   * Set call barring password.
1591e1c44949Sopenharmony_ci   *
1592e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1593e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
1594e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
1595e1c44949Sopenharmony_ci   * @param { string } oldPassword - Indicates the call restriction old password.
1596e1c44949Sopenharmony_ci   * @param { string } newPassword - Indicates the call restriction new password.
1597e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the setCallRestrictionPassword.
1598e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1599e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1600e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1601e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1602e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1603e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1604e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1605e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1606e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1607e1c44949Sopenharmony_ci   * @since 10
1608e1c44949Sopenharmony_ci   */
1609e1c44949Sopenharmony_ci  function setCallRestrictionPassword(slotId: number, oldPassword: string, newPassword: string): Promise<void>;
1610e1c44949Sopenharmony_ci
1611e1c44949Sopenharmony_ci  /**
1612e1c44949Sopenharmony_ci   * Get call forwarding information.
1613e1c44949Sopenharmony_ci   *
1614e1c44949Sopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
1615e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
1616e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
1617e1c44949Sopenharmony_ci   * @param { CallTransferType } type - Indicates which type of call forwarding to obtain.
1618e1c44949Sopenharmony_ci   * @param { AsyncCallback<CallTransferResult> } callback - Indicates the callback for getting the call forwarding status.
1619e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1620e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1621e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1622e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1623e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1624e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1625e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1626e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1627e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1628e1c44949Sopenharmony_ci   * @since 8
1629e1c44949Sopenharmony_ci   */
1630e1c44949Sopenharmony_ci  function getCallTransferInfo(slotId: number, type: CallTransferType, callback: AsyncCallback<CallTransferResult>): void;
1631e1c44949Sopenharmony_ci
1632e1c44949Sopenharmony_ci  /**
1633e1c44949Sopenharmony_ci   * Get call forwarding information.
1634e1c44949Sopenharmony_ci   *
1635e1c44949Sopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
1636e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
1637e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
1638e1c44949Sopenharmony_ci   * @param { CallTransferType } type - Indicates which type of call forwarding to obtain.
1639e1c44949Sopenharmony_ci   * @returns { Promise<CallTransferResult> } Returns the call forwarding status.
1640e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1641e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1642e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1643e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1644e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1645e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1646e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1647e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1648e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1649e1c44949Sopenharmony_ci   * @since 8
1650e1c44949Sopenharmony_ci   */
1651e1c44949Sopenharmony_ci  function getCallTransferInfo(slotId: number, type: CallTransferType): Promise<CallTransferResult>;
1652e1c44949Sopenharmony_ci
1653e1c44949Sopenharmony_ci  /**
1654e1c44949Sopenharmony_ci   * Set call forwarding information.
1655e1c44949Sopenharmony_ci   *
1656e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1657e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
1658e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
1659e1c44949Sopenharmony_ci   * @param { CallTransferInfo } info - Indicates the set call forwarding information.
1660e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of setCallTransfer.
1661e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1662e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1663e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1664e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1665e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1666e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1667e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1668e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1669e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1670e1c44949Sopenharmony_ci   * @since 8
1671e1c44949Sopenharmony_ci   */
1672e1c44949Sopenharmony_ci  function setCallTransfer(slotId: number, info: CallTransferInfo, callback: AsyncCallback<void>): void;
1673e1c44949Sopenharmony_ci
1674e1c44949Sopenharmony_ci  /**
1675e1c44949Sopenharmony_ci   * Set call forwarding information.
1676e1c44949Sopenharmony_ci   *
1677e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1678e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
1679e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
1680e1c44949Sopenharmony_ci   * @param { CallTransferInfo } info - Indicates the set call forwarding information.
1681e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the setCallTransfer.
1682e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1683e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1684e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1685e1c44949Sopenharmony_ci   * @throws { BusinessError } 801 - Capability not supported.
1686e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1687e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1688e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1689e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1690e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1691e1c44949Sopenharmony_ci   * @since 8
1692e1c44949Sopenharmony_ci   */
1693e1c44949Sopenharmony_ci  function setCallTransfer(slotId: number, info: CallTransferInfo): Promise<void>;
1694e1c44949Sopenharmony_ci
1695e1c44949Sopenharmony_ci  /**
1696e1c44949Sopenharmony_ci   * Judge whether there is a ringing call.
1697e1c44949Sopenharmony_ci   *
1698e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1699e1c44949Sopenharmony_ci   * @param { AsyncCallback<boolean> } callback - The callback of isRinging.
1700e1c44949Sopenharmony_ci   * Returns {@code true} if the device is ringing; returns {@code false} otherwise.
1701e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1702e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1703e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1704e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1705e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1706e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1707e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1708e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1709e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1710e1c44949Sopenharmony_ci   * @since 8
1711e1c44949Sopenharmony_ci   */
1712e1c44949Sopenharmony_ci  function isRinging(callback: AsyncCallback<boolean>): void;
1713e1c44949Sopenharmony_ci
1714e1c44949Sopenharmony_ci  /**
1715e1c44949Sopenharmony_ci   * Judge whether there is a ringing call.
1716e1c44949Sopenharmony_ci   *
1717e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1718e1c44949Sopenharmony_ci   * @returns { Promise<boolean> } Returns {@code true} if the device is ringing; returns {@code false} otherwise.
1719e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1720e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1721e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1722e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1723e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1724e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1725e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1726e1c44949Sopenharmony_ci   * @since 8
1727e1c44949Sopenharmony_ci   */
1728e1c44949Sopenharmony_ci  function isRinging(): Promise<boolean>;
1729e1c44949Sopenharmony_ci
1730e1c44949Sopenharmony_ci  /**
1731e1c44949Sopenharmony_ci   * Set mute during a call.
1732e1c44949Sopenharmony_ci   *
1733e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of setMuted.
1734e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1735e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1736e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1737e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1738e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1739e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1740e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1741e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1742e1c44949Sopenharmony_ci   * @since 8
1743e1c44949Sopenharmony_ci   */
1744e1c44949Sopenharmony_ci  function setMuted(callback: AsyncCallback<void>): void;
1745e1c44949Sopenharmony_ci
1746e1c44949Sopenharmony_ci  /**
1747e1c44949Sopenharmony_ci   * Set mute during a call.
1748e1c44949Sopenharmony_ci   *
1749e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the setMuted.
1750e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1751e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1752e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1753e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1754e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1755e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1756e1c44949Sopenharmony_ci   * @since 8
1757e1c44949Sopenharmony_ci   */
1758e1c44949Sopenharmony_ci  function setMuted(): Promise<void>;
1759e1c44949Sopenharmony_ci
1760e1c44949Sopenharmony_ci  /**
1761e1c44949Sopenharmony_ci   * Unmute during a call.
1762e1c44949Sopenharmony_ci   *
1763e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of cancelMuted.
1764e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1765e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1766e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1767e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1768e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1769e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1770e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1771e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1772e1c44949Sopenharmony_ci   * @since 8
1773e1c44949Sopenharmony_ci   */
1774e1c44949Sopenharmony_ci  function cancelMuted(callback: AsyncCallback<void>): void;
1775e1c44949Sopenharmony_ci
1776e1c44949Sopenharmony_ci  /**
1777e1c44949Sopenharmony_ci   * Unmute during a call.
1778e1c44949Sopenharmony_ci   *
1779e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the cancelMuted.
1780e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1781e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1782e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1783e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1784e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1785e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1786e1c44949Sopenharmony_ci   * @since 8
1787e1c44949Sopenharmony_ci   */
1788e1c44949Sopenharmony_ci  function cancelMuted(): Promise<void>;
1789e1c44949Sopenharmony_ci
1790e1c44949Sopenharmony_ci  /**
1791e1c44949Sopenharmony_ci   * Set the audio device.
1792e1c44949Sopenharmony_ci   *
1793e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1794e1c44949Sopenharmony_ci   * @param { AudioDevice } device - Indicates the device of audio.
1795e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of setAudioDevice.
1796e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1797e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1798e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1799e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1800e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1801e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1802e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1803e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1804e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1805e1c44949Sopenharmony_ci   * @since 8
1806e1c44949Sopenharmony_ci   */
1807e1c44949Sopenharmony_ci  function setAudioDevice(device: AudioDevice, callback: AsyncCallback<void>): void;
1808e1c44949Sopenharmony_ci
1809e1c44949Sopenharmony_ci  /**
1810e1c44949Sopenharmony_ci   * Set the audio device.
1811e1c44949Sopenharmony_ci   *
1812e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1813e1c44949Sopenharmony_ci   * @param { AudioDevice } device - Indicates the device of audio.
1814e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the setAudioDevice.
1815e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1816e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1817e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1818e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1819e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1820e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1821e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1822e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1823e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1824e1c44949Sopenharmony_ci   * @since 10
1825e1c44949Sopenharmony_ci   */
1826e1c44949Sopenharmony_ci  function setAudioDevice(device: AudioDevice): Promise<void>;
1827e1c44949Sopenharmony_ci
1828e1c44949Sopenharmony_ci  /**
1829e1c44949Sopenharmony_ci   * Join the conference call.
1830e1c44949Sopenharmony_ci   *
1831e1c44949Sopenharmony_ci   * @param { number } mainCallId - Indicates the identifier of the main call.
1832e1c44949Sopenharmony_ci   * @param { Array<string> } callNumberList - Indicates a call list.
1833e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of joinConference.
1834e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1835e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1836e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1837e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1838e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1839e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1840e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1841e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1842e1c44949Sopenharmony_ci   * @since 8
1843e1c44949Sopenharmony_ci   */
1844e1c44949Sopenharmony_ci  function joinConference(mainCallId: number, callNumberList: Array<string>, callback: AsyncCallback<void>): void;
1845e1c44949Sopenharmony_ci
1846e1c44949Sopenharmony_ci  /**
1847e1c44949Sopenharmony_ci   * Join the conference call.
1848e1c44949Sopenharmony_ci   *
1849e1c44949Sopenharmony_ci   * @param { number } mainCallId - Indicates the identifier of the main call.
1850e1c44949Sopenharmony_ci   * @param { Array<string> } callNumberList - Indicates a call list.
1851e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the joinConference.
1852e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1853e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1854e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1855e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1856e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1857e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1858e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1859e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1860e1c44949Sopenharmony_ci   * @since 8
1861e1c44949Sopenharmony_ci   */
1862e1c44949Sopenharmony_ci  function joinConference(mainCallId: number, callNumberList: Array<string>): Promise<void>;
1863e1c44949Sopenharmony_ci
1864e1c44949Sopenharmony_ci  /**
1865e1c44949Sopenharmony_ci   * Kick out call from the conference call.
1866e1c44949Sopenharmony_ci   *
1867e1c44949Sopenharmony_ci   * @permission ohos.permission.PLACE_CALL
1868e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call which kick out.
1869e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of kickOutFromConference.
1870e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1871e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1872e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1873e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1874e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1875e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1876e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1877e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1878e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1879e1c44949Sopenharmony_ci   * @since 10
1880e1c44949Sopenharmony_ci   */
1881e1c44949Sopenharmony_ci  function kickOutFromConference(callId: number, callback: AsyncCallback<void>): void;
1882e1c44949Sopenharmony_ci
1883e1c44949Sopenharmony_ci  /**
1884e1c44949Sopenharmony_ci   * Kick out call from the conference call.
1885e1c44949Sopenharmony_ci   *
1886e1c44949Sopenharmony_ci   * @permission ohos.permission.PLACE_CALL
1887e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call which kick out.
1888e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the kickOutFromConference.
1889e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1890e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1891e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1892e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1893e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1894e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1895e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1896e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1897e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1898e1c44949Sopenharmony_ci   * @since 10
1899e1c44949Sopenharmony_ci   */
1900e1c44949Sopenharmony_ci  function kickOutFromConference(callId: number): Promise<void>;
1901e1c44949Sopenharmony_ci
1902e1c44949Sopenharmony_ci  /**
1903e1c44949Sopenharmony_ci   * Update Ims call mode.
1904e1c44949Sopenharmony_ci   *
1905e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
1906e1c44949Sopenharmony_ci   * @param { ImsCallMode } mode - Indicates the mode of the ims call.
1907e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of updateImsCallMode.
1908e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1909e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1910e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1911e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1912e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1913e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1914e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1915e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1916e1c44949Sopenharmony_ci   * @since 8
1917e1c44949Sopenharmony_ci   */
1918e1c44949Sopenharmony_ci  function updateImsCallMode(callId: number, mode: ImsCallMode, callback: AsyncCallback<void>): void;
1919e1c44949Sopenharmony_ci
1920e1c44949Sopenharmony_ci  /**
1921e1c44949Sopenharmony_ci   * Update Ims call mode.
1922e1c44949Sopenharmony_ci   *
1923e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
1924e1c44949Sopenharmony_ci   * @param { ImsCallMode } mode - Indicates the mode of the ims call.
1925e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the updateImsCallMode.
1926e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1927e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1928e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1929e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1930e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1931e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1932e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1933e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1934e1c44949Sopenharmony_ci   * @since 8
1935e1c44949Sopenharmony_ci   */
1936e1c44949Sopenharmony_ci  function updateImsCallMode(callId: number, mode: ImsCallMode): Promise<void>;
1937e1c44949Sopenharmony_ci
1938e1c44949Sopenharmony_ci  /**
1939e1c44949Sopenharmony_ci   * Cancel call upgrade when voice call upgrade to video call.
1940e1c44949Sopenharmony_ci   *
1941e1c44949Sopenharmony_ci   * @permission ohos.permission.PLACE_CALL
1942e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
1943e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the cancelCallUpgrade.
1944e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1945e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1946e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1947e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1948e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1949e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1950e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1951e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1952e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1953e1c44949Sopenharmony_ci   * @since 11
1954e1c44949Sopenharmony_ci   */
1955e1c44949Sopenharmony_ci  function cancelCallUpgrade(callId: number): Promise<void>;
1956e1c44949Sopenharmony_ci
1957e1c44949Sopenharmony_ci  /**
1958e1c44949Sopenharmony_ci   * Control camera to open/close/switch camera by cameraId when video call.
1959e1c44949Sopenharmony_ci   *
1960e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1961e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
1962e1c44949Sopenharmony_ci   * @param { string } cameraId - Indicates the identifier of the camera id.
1963e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the controlCamera.
1964e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1965e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1966e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1967e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1968e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1969e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1970e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1971e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1972e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1973e1c44949Sopenharmony_ci   * @since 11
1974e1c44949Sopenharmony_ci   */
1975e1c44949Sopenharmony_ci  function controlCamera(callId: number, cameraId: string): Promise<void>;
1976e1c44949Sopenharmony_ci
1977e1c44949Sopenharmony_ci  /**
1978e1c44949Sopenharmony_ci   * Set preview surface when video call.
1979e1c44949Sopenharmony_ci   *
1980e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
1981e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
1982e1c44949Sopenharmony_ci   * @param { string } surfaceId - Indicates the identifier of the preview surface id.
1983e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the setPreviewWindow.
1984e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
1985e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
1986e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
1987e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
1988e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
1989e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
1990e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
1991e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
1992e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
1993e1c44949Sopenharmony_ci   * @since 11
1994e1c44949Sopenharmony_ci   */
1995e1c44949Sopenharmony_ci  function setPreviewSurface(callId: number, surfaceId: string): Promise<void>;
1996e1c44949Sopenharmony_ci
1997e1c44949Sopenharmony_ci  /**
1998e1c44949Sopenharmony_ci   * Set display surface when video call.
1999e1c44949Sopenharmony_ci   *
2000e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2001e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
2002e1c44949Sopenharmony_ci   * @param { string } surfaceId - Indicates the identifier of the display surface id.
2003e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the setDisplayWindow.
2004e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2005e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2006e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2007e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2008e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2009e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2010e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2011e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2012e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2013e1c44949Sopenharmony_ci   * @since 11
2014e1c44949Sopenharmony_ci   */
2015e1c44949Sopenharmony_ci  function setDisplaySurface(callId: number, surfaceId: string): Promise<void>;
2016e1c44949Sopenharmony_ci
2017e1c44949Sopenharmony_ci  /**
2018e1c44949Sopenharmony_ci   * Set device direction when video call.
2019e1c44949Sopenharmony_ci   *
2020e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2021e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
2022e1c44949Sopenharmony_ci   * @param { DeviceDirection } deviceDirection - Indicates the identifier of the direction for the display.
2023e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the setDeviceDirection.
2024e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2025e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2026e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2027e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2028e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2029e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2030e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2031e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2032e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2033e1c44949Sopenharmony_ci   * @since 11
2034e1c44949Sopenharmony_ci   */
2035e1c44949Sopenharmony_ci  function setDeviceDirection(callId: number, deviceDirection: DeviceDirection): Promise<void>;
2036e1c44949Sopenharmony_ci
2037e1c44949Sopenharmony_ci  /**
2038e1c44949Sopenharmony_ci   * Subscribe to the imsCallModeChange event.
2039e1c44949Sopenharmony_ci   *
2040e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2041e1c44949Sopenharmony_ci   * @param { 'imsCallModeChange' } type - Event type. Indicates the imsCallModeChange event to be subscribed to.
2042e1c44949Sopenharmony_ci   * @param { Callback<ImsCallModeInfo> } callback - Indicates the callback for
2043e1c44949Sopenharmony_ci   * getting the result of ImsCallModeInfo details.
2044e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2045e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2046e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2047e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2048e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2049e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2050e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2051e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2052e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2053e1c44949Sopenharmony_ci   * @since 11
2054e1c44949Sopenharmony_ci   */
2055e1c44949Sopenharmony_ci  function on(type: 'imsCallModeChange', callback: Callback<ImsCallModeInfo>): void;
2056e1c44949Sopenharmony_ci
2057e1c44949Sopenharmony_ci  /**
2058e1c44949Sopenharmony_ci   * Unsubscribe from the imsCallModeChange event.
2059e1c44949Sopenharmony_ci   *
2060e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2061e1c44949Sopenharmony_ci   * @param { 'imsCallModeChange' } type - Event type. Indicates the imsCallModeChange event to unsubscribe from.
2062e1c44949Sopenharmony_ci   * @param { Callback<ImsCallModeInfo> } callback - Indicates the callback to unsubscribe from
2063e1c44949Sopenharmony_ci   * the imsCallModeChange event.
2064e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2065e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2066e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2067e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2068e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2069e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2070e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2071e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2072e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2073e1c44949Sopenharmony_ci   * @since 11
2074e1c44949Sopenharmony_ci   */
2075e1c44949Sopenharmony_ci  function off(type: 'imsCallModeChange', callback?: Callback<ImsCallModeInfo>): void;
2076e1c44949Sopenharmony_ci
2077e1c44949Sopenharmony_ci  /**
2078e1c44949Sopenharmony_ci   * Subscribe to the callSessionEvent.
2079e1c44949Sopenharmony_ci   *
2080e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2081e1c44949Sopenharmony_ci   * @param { 'callSessionEvent' } type - Event type. Indicates the callSessionEvent
2082e1c44949Sopenharmony_ci   * event to be subscribed to.
2083e1c44949Sopenharmony_ci   * @param { Callback<CallSessionEvent> } callback - Indicates the callback for
2084e1c44949Sopenharmony_ci   * getting the result of CallSessionEvent.
2085e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2086e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2087e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2088e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2089e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2090e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2091e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2092e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2093e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2094e1c44949Sopenharmony_ci   * @since 11
2095e1c44949Sopenharmony_ci   */
2096e1c44949Sopenharmony_ci  function on(type: 'callSessionEvent', callback: Callback<CallSessionEvent>): void;
2097e1c44949Sopenharmony_ci
2098e1c44949Sopenharmony_ci  /**
2099e1c44949Sopenharmony_ci   * Unsubscribe from the callSessionEvent.
2100e1c44949Sopenharmony_ci   *
2101e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2102e1c44949Sopenharmony_ci   * @param { 'callSessionEvent' } type - Event type. Indicates the callSessionEventChange event to
2103e1c44949Sopenharmony_ci   * unsubscribe from.
2104e1c44949Sopenharmony_ci   * @param { Callback<CallSessionEvent> } callback - Indicates the callback to unsubscribe from
2105e1c44949Sopenharmony_ci   * the CallSessionEvent event.
2106e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2107e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2108e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2109e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2110e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2111e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2112e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2113e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2114e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2115e1c44949Sopenharmony_ci   * @since 11
2116e1c44949Sopenharmony_ci   */
2117e1c44949Sopenharmony_ci  function off(type: 'callSessionEvent', callback?: Callback<CallSessionEvent>): void;
2118e1c44949Sopenharmony_ci
2119e1c44949Sopenharmony_ci  /**
2120e1c44949Sopenharmony_ci   * Subscribe to the peerDimensionsChange event.
2121e1c44949Sopenharmony_ci   *
2122e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2123e1c44949Sopenharmony_ci   * @param { 'peerDimensionsChange' } type - Event type. Indicates the peerDimensionsChange event
2124e1c44949Sopenharmony_ci   * to be subscribed to.
2125e1c44949Sopenharmony_ci   * @param { Callback<PeerDimensionsDetail> } callback - Indicates the callback for
2126e1c44949Sopenharmony_ci   * getting the result of PeerDimensionsDetail details.
2127e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2128e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2129e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2130e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2131e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2132e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2133e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2134e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2135e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2136e1c44949Sopenharmony_ci   * @since 11
2137e1c44949Sopenharmony_ci   */
2138e1c44949Sopenharmony_ci  function on(type: 'peerDimensionsChange', callback: Callback<PeerDimensionsDetail>): void;
2139e1c44949Sopenharmony_ci
2140e1c44949Sopenharmony_ci  /**
2141e1c44949Sopenharmony_ci   * Unsubscribe from the peerDimensionsChange event.
2142e1c44949Sopenharmony_ci   *
2143e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2144e1c44949Sopenharmony_ci   * @param { 'peerDimensionsChange' } type - Event type. Indicates the peerDimensionsChange event to
2145e1c44949Sopenharmony_ci   * unsubscribe from.
2146e1c44949Sopenharmony_ci   * @param { Callback<PeerDimensionsDetail> } callback - Indicates the callback to unsubscribe from
2147e1c44949Sopenharmony_ci   * peerDimensionsChange event.
2148e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2149e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2150e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2151e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2152e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2153e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2154e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2155e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2156e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2157e1c44949Sopenharmony_ci   * @since 11
2158e1c44949Sopenharmony_ci   */
2159e1c44949Sopenharmony_ci  function off(type: 'peerDimensionsChange', callback?: Callback<PeerDimensionsDetail>): void;
2160e1c44949Sopenharmony_ci
2161e1c44949Sopenharmony_ci  /**
2162e1c44949Sopenharmony_ci   * Subscribe to the cameraCapabilitiesChange event.
2163e1c44949Sopenharmony_ci   *
2164e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2165e1c44949Sopenharmony_ci   * @param { 'cameraCapabilitiesChange' } type - Event type. Indicates the cameraCapabilitiesChange event
2166e1c44949Sopenharmony_ci   * to be subscribed to.
2167e1c44949Sopenharmony_ci   * @param { Callback<CameraCapabilities> } callback - Indicates the callback for
2168e1c44949Sopenharmony_ci   * getting the result of CameraCapabilities details.
2169e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2170e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2171e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2172e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2173e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2174e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2175e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2176e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2177e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2178e1c44949Sopenharmony_ci   * @since 11
2179e1c44949Sopenharmony_ci   */
2180e1c44949Sopenharmony_ci  function on(type: 'cameraCapabilitiesChange', callback: Callback<CameraCapabilities>): void;
2181e1c44949Sopenharmony_ci
2182e1c44949Sopenharmony_ci  /**
2183e1c44949Sopenharmony_ci   * Unsubscribe from the cameraCapabilitiesChange event.
2184e1c44949Sopenharmony_ci   *
2185e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2186e1c44949Sopenharmony_ci   * @param { 'cameraCapabilitiesChange' } type - Event type. Indicates the cameraCapabilitiesChange event
2187e1c44949Sopenharmony_ci   * to unsubscribe from.
2188e1c44949Sopenharmony_ci   * @param { Callback<CameraCapabilities> } callback - Indicates the callback to unsubscribe from
2189e1c44949Sopenharmony_ci   * cameraCapabilitiesChange event.
2190e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2191e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2192e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2193e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2194e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2195e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2196e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2197e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2198e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2199e1c44949Sopenharmony_ci   * @since 11
2200e1c44949Sopenharmony_ci   */
2201e1c44949Sopenharmony_ci  function off(type: 'cameraCapabilitiesChange', callback?: Callback<CameraCapabilities>): void;
2202e1c44949Sopenharmony_ci
2203e1c44949Sopenharmony_ci  /**
2204e1c44949Sopenharmony_ci   * Turn on Ims switch.
2205e1c44949Sopenharmony_ci   *
2206e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2207e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
2208e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
2209e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of enableImsSwitch.
2210e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2211e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2212e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2213e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2214e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2215e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2216e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2217e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2218e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2219e1c44949Sopenharmony_ci   * @since 8
2220e1c44949Sopenharmony_ci   */
2221e1c44949Sopenharmony_ci  function enableImsSwitch(slotId: number, callback: AsyncCallback<void>): void;
2222e1c44949Sopenharmony_ci
2223e1c44949Sopenharmony_ci  /**
2224e1c44949Sopenharmony_ci   * Turn on Ims switch.
2225e1c44949Sopenharmony_ci   *
2226e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2227e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
2228e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
2229e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the enableImsSwitch.
2230e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2231e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2232e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2233e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2234e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2235e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2236e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2237e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2238e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2239e1c44949Sopenharmony_ci   * @since 8
2240e1c44949Sopenharmony_ci   */
2241e1c44949Sopenharmony_ci  function enableImsSwitch(slotId: number): Promise<void>;
2242e1c44949Sopenharmony_ci
2243e1c44949Sopenharmony_ci  /**
2244e1c44949Sopenharmony_ci   * Turn off Ims switch.
2245e1c44949Sopenharmony_ci   *
2246e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2247e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
2248e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
2249e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of disableImsSwitch.
2250e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2251e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2252e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2253e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2254e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2255e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2256e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2257e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2258e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2259e1c44949Sopenharmony_ci   * @since 8
2260e1c44949Sopenharmony_ci   */
2261e1c44949Sopenharmony_ci  function disableImsSwitch(slotId: number, callback: AsyncCallback<void>): void;
2262e1c44949Sopenharmony_ci
2263e1c44949Sopenharmony_ci  /**
2264e1c44949Sopenharmony_ci   * Turn off Ims switch.
2265e1c44949Sopenharmony_ci   *
2266e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2267e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
2268e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
2269e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the disableImsSwitch.
2270e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2271e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2272e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2273e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2274e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2275e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2276e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2277e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2278e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2279e1c44949Sopenharmony_ci   * @since 8
2280e1c44949Sopenharmony_ci   */
2281e1c44949Sopenharmony_ci  function disableImsSwitch(slotId: number): Promise<void>;
2282e1c44949Sopenharmony_ci
2283e1c44949Sopenharmony_ci  /**
2284e1c44949Sopenharmony_ci   * Judge whether the Ims switch is enabled.
2285e1c44949Sopenharmony_ci   *
2286e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
2287e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
2288e1c44949Sopenharmony_ci   * @param { AsyncCallback<boolean> } callback - The callback of isImsSwitchEnabled.
2289e1c44949Sopenharmony_ci   * Returns {@code true} If the ims switch is on; returns {@code false} otherwise.
2290e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2291e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2292e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2293e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2294e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2295e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2296e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2297e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2298e1c44949Sopenharmony_ci   * @since 8
2299e1c44949Sopenharmony_ci   */
2300e1c44949Sopenharmony_ci  function isImsSwitchEnabled(slotId: number, callback: AsyncCallback<boolean>): void;
2301e1c44949Sopenharmony_ci
2302e1c44949Sopenharmony_ci  /**
2303e1c44949Sopenharmony_ci   * Judge whether the Ims switch is enabled.
2304e1c44949Sopenharmony_ci   *
2305e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
2306e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
2307e1c44949Sopenharmony_ci   * @returns { Promise<boolean> } Returns {@code true} If the ims switch is on; returns {@code false} otherwise.
2308e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2309e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2310e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2311e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2312e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2313e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2314e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2315e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2316e1c44949Sopenharmony_ci   * @since 8
2317e1c44949Sopenharmony_ci   */
2318e1c44949Sopenharmony_ci  function isImsSwitchEnabled(slotId: number): Promise<boolean>;
2319e1c44949Sopenharmony_ci
2320e1c44949Sopenharmony_ci  /**
2321e1c44949Sopenharmony_ci   * Close unfinished ussd.
2322e1c44949Sopenharmony_ci   *
2323e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2324e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
2325e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
2326e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of closeUnfinishedUssd.
2327e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2328e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2329e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2330e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2331e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2332e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2333e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2334e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2335e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2336e1c44949Sopenharmony_ci   * @since 10
2337e1c44949Sopenharmony_ci   */
2338e1c44949Sopenharmony_ci  function closeUnfinishedUssd(slotId: number, callback: AsyncCallback<void>): void;
2339e1c44949Sopenharmony_ci
2340e1c44949Sopenharmony_ci  /**
2341e1c44949Sopenharmony_ci   * Close unfinished ussd.
2342e1c44949Sopenharmony_ci   *
2343e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2344e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
2345e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
2346e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the closeUnfinishedUssd.
2347e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2348e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2349e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2350e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2351e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2352e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2353e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2354e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2355e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2356e1c44949Sopenharmony_ci   * @since 10
2357e1c44949Sopenharmony_ci   */
2358e1c44949Sopenharmony_ci  function closeUnfinishedUssd(slotId: number): Promise<void>;
2359e1c44949Sopenharmony_ci
2360e1c44949Sopenharmony_ci  /**
2361e1c44949Sopenharmony_ci   * Set switch state for voice over NR.
2362e1c44949Sopenharmony_ci   *
2363e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2364e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
2365e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
2366e1c44949Sopenharmony_ci   * @param { VoNRState } state - Indicates the VoNR state.
2367e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of setVoNRState.
2368e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2369e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2370e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2371e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2372e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2373e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2374e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2375e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2376e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2377e1c44949Sopenharmony_ci   * @since 10
2378e1c44949Sopenharmony_ci   */
2379e1c44949Sopenharmony_ci  function setVoNRState(slotId: number, state: VoNRState, callback: AsyncCallback<void>): void;
2380e1c44949Sopenharmony_ci
2381e1c44949Sopenharmony_ci  /**
2382e1c44949Sopenharmony_ci   * Set switch state for voice over NR.
2383e1c44949Sopenharmony_ci   *
2384e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2385e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
2386e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
2387e1c44949Sopenharmony_ci   * @param { VoNRState } state - Indicates the VoNR state.
2388e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the setVoNRState.
2389e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2390e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2391e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2392e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2393e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2394e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2395e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2396e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2397e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2398e1c44949Sopenharmony_ci   * @since 10
2399e1c44949Sopenharmony_ci   */
2400e1c44949Sopenharmony_ci  function setVoNRState(slotId: number, state: VoNRState): Promise<void>;
2401e1c44949Sopenharmony_ci
2402e1c44949Sopenharmony_ci  /**
2403e1c44949Sopenharmony_ci   * Get switch state for voice over NR.
2404e1c44949Sopenharmony_ci   *
2405e1c44949Sopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
2406e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
2407e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
2408e1c44949Sopenharmony_ci   * @param { AsyncCallback<VoNRState> } callback - Indicates the callback for getVoNRState.
2409e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2410e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2411e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2412e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2413e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2414e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2415e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2416e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2417e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2418e1c44949Sopenharmony_ci   * @since 10
2419e1c44949Sopenharmony_ci   */
2420e1c44949Sopenharmony_ci  function getVoNRState(slotId: number, callback: AsyncCallback<VoNRState>): void;
2421e1c44949Sopenharmony_ci
2422e1c44949Sopenharmony_ci  /**
2423e1c44949Sopenharmony_ci   * Get switch state for voice over NR.
2424e1c44949Sopenharmony_ci   *
2425e1c44949Sopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
2426e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
2427e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
2428e1c44949Sopenharmony_ci   * @returns { Promise<VoNRState> } Returns the VoNR state.
2429e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2430e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2431e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2432e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2433e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2434e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2435e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2436e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2437e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2438e1c44949Sopenharmony_ci   * @since 10
2439e1c44949Sopenharmony_ci   */
2440e1c44949Sopenharmony_ci  function getVoNRState(slotId: number): Promise<VoNRState>;
2441e1c44949Sopenharmony_ci
2442e1c44949Sopenharmony_ci  /**
2443e1c44949Sopenharmony_ci   * Checks whether can set call transfer time.
2444e1c44949Sopenharmony_ci   *
2445e1c44949Sopenharmony_ci   * The system checks whether IP multimedia subsystem domain (IMS) can set call transfer time.
2446e1c44949Sopenharmony_ci   *
2447e1c44949Sopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
2448e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
2449e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
2450e1c44949Sopenharmony_ci   * @param { AsyncCallback<boolean> } callback - Returns {@code true} if the device can set call transfer time;
2451e1c44949Sopenharmony_ci   * returns {@code false} otherwise.
2452e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2453e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2454e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2455e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2456e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2457e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2458e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2459e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2460e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2461e1c44949Sopenharmony_ci   * @since 10
2462e1c44949Sopenharmony_ci   */
2463e1c44949Sopenharmony_ci  function canSetCallTransferTime(slotId: number, callback: AsyncCallback<boolean>): void;
2464e1c44949Sopenharmony_ci
2465e1c44949Sopenharmony_ci  /**
2466e1c44949Sopenharmony_ci   * Checks whether can set call transfer time.
2467e1c44949Sopenharmony_ci   *
2468e1c44949Sopenharmony_ci   * The system checks whether IP multimedia subsystem domain (IMS) can set call transfer time.
2469e1c44949Sopenharmony_ci   *
2470e1c44949Sopenharmony_ci   * @permission ohos.permission.GET_TELEPHONY_STATE
2471e1c44949Sopenharmony_ci   * @param { number } slotId - Indicates the card slot index number,
2472e1c44949Sopenharmony_ci   * ranging from 0 to the maximum card slot index number supported by the device.
2473e1c44949Sopenharmony_ci   * @returns { Promise<boolean> } Returns {@code true} if the device can set call transfer time;
2474e1c44949Sopenharmony_ci   * returns {@code false} otherwise.
2475e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2476e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2477e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2478e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2479e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2480e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2481e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2482e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2483e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2484e1c44949Sopenharmony_ci   * @since 10
2485e1c44949Sopenharmony_ci   */
2486e1c44949Sopenharmony_ci  function canSetCallTransferTime(slotId: number): Promise<boolean>;
2487e1c44949Sopenharmony_ci
2488e1c44949Sopenharmony_ci  /**
2489e1c44949Sopenharmony_ci   * Enters the special code on the keypad.
2490e1c44949Sopenharmony_ci   *
2491e1c44949Sopenharmony_ci   * @permission ohos.permission.PLACE_CALL
2492e1c44949Sopenharmony_ci   * @param { string } inputCode - Indicates the special code to enter.
2493e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of inputDialerSpecialCode.
2494e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2495e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2496e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2497e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2498e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2499e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2500e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2501e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2502e1c44949Sopenharmony_ci   * @since 10
2503e1c44949Sopenharmony_ci   */
2504e1c44949Sopenharmony_ci  function inputDialerSpecialCode(inputCode: string, callback: AsyncCallback<void>): void;
2505e1c44949Sopenharmony_ci
2506e1c44949Sopenharmony_ci  /**
2507e1c44949Sopenharmony_ci   * Enters the special code on the keypad.
2508e1c44949Sopenharmony_ci   *
2509e1c44949Sopenharmony_ci   * @permission ohos.permission.PLACE_CALL
2510e1c44949Sopenharmony_ci   * @param { string } inputCode - Indicates the special code to enter.
2511e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the inputDialerSpecialCode.
2512e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2513e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2514e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2515e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2516e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2517e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2518e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2519e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2520e1c44949Sopenharmony_ci   * @since 10
2521e1c44949Sopenharmony_ci   */
2522e1c44949Sopenharmony_ci  function inputDialerSpecialCode(inputCode: string): Promise<void>;
2523e1c44949Sopenharmony_ci
2524e1c44949Sopenharmony_ci  /**
2525e1c44949Sopenharmony_ci   * Remove missed incoming call notification.
2526e1c44949Sopenharmony_ci   *
2527e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE and ohos.permission.READ_CALL_LOG and
2528e1c44949Sopenharmony_ci   * ohos.permission.WRITE_CALL_LOG
2529e1c44949Sopenharmony_ci   * @param { AsyncCallback<void> } callback - The callback of removeMissedIncomingCallNotification.
2530e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2531e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2532e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2533e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2534e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2535e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2536e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2537e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2538e1c44949Sopenharmony_ci   * @since 10
2539e1c44949Sopenharmony_ci   */
2540e1c44949Sopenharmony_ci  function removeMissedIncomingCallNotification(callback: AsyncCallback<void>): void;
2541e1c44949Sopenharmony_ci
2542e1c44949Sopenharmony_ci  /**
2543e1c44949Sopenharmony_ci   * Remove missed incoming call notification.
2544e1c44949Sopenharmony_ci   *
2545e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE and ohos.permission.READ_CALL_LOG and
2546e1c44949Sopenharmony_ci   * ohos.permission.WRITE_CALL_LOG
2547e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the removeMissedIncomingCallNotification.
2548e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2549e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2550e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2551e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2552e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2553e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2554e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2555e1c44949Sopenharmony_ci   * @since 10
2556e1c44949Sopenharmony_ci   */
2557e1c44949Sopenharmony_ci  function removeMissedIncomingCallNotification(): Promise<void>;
2558e1c44949Sopenharmony_ci
2559e1c44949Sopenharmony_ci  /**
2560e1c44949Sopenharmony_ci   * Send call ui event.
2561e1c44949Sopenharmony_ci   *
2562e1c44949Sopenharmony_ci   * @permission ohos.permission.SET_TELEPHONY_STATE
2563e1c44949Sopenharmony_ci   * @param { number } callId - Indicates the identifier of the call.
2564e1c44949Sopenharmony_ci   * @param { string } eventName - Indicates the event name.
2565e1c44949Sopenharmony_ci   * @returns { Promise<void> } The promise returned by the sendCallUiEvent.
2566e1c44949Sopenharmony_ci   * @throws { BusinessError } 201 - Permission denied.
2567e1c44949Sopenharmony_ci   * @throws { BusinessError } 202 - Non-system applications use system APIs.
2568e1c44949Sopenharmony_ci   * @throws { BusinessError } 401 - Parameter error.
2569e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300001 - Invalid parameter value.
2570e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300002 - Operation failed. Cannot connect to service.
2571e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300003 - System internal error.
2572e1c44949Sopenharmony_ci   * @throws { BusinessError } 8300999 - Unknown error code.
2573e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2574e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2575e1c44949Sopenharmony_ci   * @since 12
2576e1c44949Sopenharmony_ci   */
2577e1c44949Sopenharmony_ci  function sendCallUiEvent(callId: number, eventName: string): Promise<void>;
2578e1c44949Sopenharmony_ci
2579e1c44949Sopenharmony_ci  /**
2580e1c44949Sopenharmony_ci   * Indicates the mode of the ims call.
2581e1c44949Sopenharmony_ci   *
2582e1c44949Sopenharmony_ci   * @enum { number }
2583e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2584e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2585e1c44949Sopenharmony_ci   * @since 8
2586e1c44949Sopenharmony_ci   */
2587e1c44949Sopenharmony_ci  export enum ImsCallMode {
2588e1c44949Sopenharmony_ci    /**
2589e1c44949Sopenharmony_ci     * Indicates audio only calls.
2590e1c44949Sopenharmony_ci     *
2591e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2592e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2593e1c44949Sopenharmony_ci     * @since 8
2594e1c44949Sopenharmony_ci     */
2595e1c44949Sopenharmony_ci    CALL_MODE_AUDIO_ONLY = 0,
2596e1c44949Sopenharmony_ci
2597e1c44949Sopenharmony_ci    /**
2598e1c44949Sopenharmony_ci     * Indicates that only calls are sent.
2599e1c44949Sopenharmony_ci     *
2600e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2601e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2602e1c44949Sopenharmony_ci     * @since 8
2603e1c44949Sopenharmony_ci     */
2604e1c44949Sopenharmony_ci    CALL_MODE_SEND_ONLY,
2605e1c44949Sopenharmony_ci
2606e1c44949Sopenharmony_ci    /**
2607e1c44949Sopenharmony_ci     * Indicates receiving only calls.
2608e1c44949Sopenharmony_ci     *
2609e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2610e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2611e1c44949Sopenharmony_ci     * @since 8
2612e1c44949Sopenharmony_ci     */
2613e1c44949Sopenharmony_ci    CALL_MODE_RECEIVE_ONLY,
2614e1c44949Sopenharmony_ci
2615e1c44949Sopenharmony_ci    /**
2616e1c44949Sopenharmony_ci     * Indicates permission to send and receive calls.
2617e1c44949Sopenharmony_ci     *
2618e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2619e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2620e1c44949Sopenharmony_ci     * @since 8
2621e1c44949Sopenharmony_ci     */
2622e1c44949Sopenharmony_ci    CALL_MODE_SEND_RECEIVE,
2623e1c44949Sopenharmony_ci
2624e1c44949Sopenharmony_ci    /**
2625e1c44949Sopenharmony_ci     * Indicates a pause in video calls.
2626e1c44949Sopenharmony_ci     *
2627e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2628e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2629e1c44949Sopenharmony_ci     * @since 8
2630e1c44949Sopenharmony_ci     */
2631e1c44949Sopenharmony_ci    CALL_MODE_VIDEO_PAUSED,
2632e1c44949Sopenharmony_ci  }
2633e1c44949Sopenharmony_ci
2634e1c44949Sopenharmony_ci  /**
2635e1c44949Sopenharmony_ci   * Indicates the VoNR state.
2636e1c44949Sopenharmony_ci   *
2637e1c44949Sopenharmony_ci   * @enum { number }
2638e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2639e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2640e1c44949Sopenharmony_ci   * @since 10
2641e1c44949Sopenharmony_ci   */
2642e1c44949Sopenharmony_ci  export enum VoNRState {
2643e1c44949Sopenharmony_ci    /**
2644e1c44949Sopenharmony_ci     * Indicates the VoNR switch is off.
2645e1c44949Sopenharmony_ci     *
2646e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2647e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2648e1c44949Sopenharmony_ci     * @since 10
2649e1c44949Sopenharmony_ci     */
2650e1c44949Sopenharmony_ci    VONR_STATE_OFF = 0,
2651e1c44949Sopenharmony_ci
2652e1c44949Sopenharmony_ci    /**
2653e1c44949Sopenharmony_ci     * Indicates the VoNR switch is on.
2654e1c44949Sopenharmony_ci     *
2655e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2656e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2657e1c44949Sopenharmony_ci     * @since 10
2658e1c44949Sopenharmony_ci     */
2659e1c44949Sopenharmony_ci    VONR_STATE_ON = 1,
2660e1c44949Sopenharmony_ci  }
2661e1c44949Sopenharmony_ci
2662e1c44949Sopenharmony_ci  /**
2663e1c44949Sopenharmony_ci   * Indicates the device type of the audio device.
2664e1c44949Sopenharmony_ci   *
2665e1c44949Sopenharmony_ci   * @enum { number }
2666e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2667e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2668e1c44949Sopenharmony_ci   * @since 10
2669e1c44949Sopenharmony_ci   */
2670e1c44949Sopenharmony_ci  export enum AudioDeviceType {
2671e1c44949Sopenharmony_ci    /**
2672e1c44949Sopenharmony_ci     * Indicates the audio device is earpiece.
2673e1c44949Sopenharmony_ci     *
2674e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2675e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2676e1c44949Sopenharmony_ci     * @since 10
2677e1c44949Sopenharmony_ci     */
2678e1c44949Sopenharmony_ci    DEVICE_EARPIECE,
2679e1c44949Sopenharmony_ci
2680e1c44949Sopenharmony_ci    /**
2681e1c44949Sopenharmony_ci     * Indicates the audio device is speaker.
2682e1c44949Sopenharmony_ci     *
2683e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2684e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2685e1c44949Sopenharmony_ci     * @since 10
2686e1c44949Sopenharmony_ci     */
2687e1c44949Sopenharmony_ci    DEVICE_SPEAKER,
2688e1c44949Sopenharmony_ci
2689e1c44949Sopenharmony_ci    /**
2690e1c44949Sopenharmony_ci     * Indicates the audio device is wired headset.
2691e1c44949Sopenharmony_ci     *
2692e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2693e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2694e1c44949Sopenharmony_ci     * @since 10
2695e1c44949Sopenharmony_ci     */
2696e1c44949Sopenharmony_ci    DEVICE_WIRED_HEADSET,
2697e1c44949Sopenharmony_ci
2698e1c44949Sopenharmony_ci    /**
2699e1c44949Sopenharmony_ci     * Indicates the audio device is bluetooth headset.
2700e1c44949Sopenharmony_ci     *
2701e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2702e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2703e1c44949Sopenharmony_ci     * @since 10
2704e1c44949Sopenharmony_ci     */
2705e1c44949Sopenharmony_ci    DEVICE_BLUETOOTH_SCO,
2706e1c44949Sopenharmony_ci
2707e1c44949Sopenharmony_ci    /**
2708e1c44949Sopenharmony_ci     * Indicates the audio device is distributed automotive device.
2709e1c44949Sopenharmony_ci     *
2710e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2711e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2712e1c44949Sopenharmony_ci     * @since 11
2713e1c44949Sopenharmony_ci     */
2714e1c44949Sopenharmony_ci    DEVICE_DISTRIBUTED_AUTOMOTIVE,
2715e1c44949Sopenharmony_ci  }
2716e1c44949Sopenharmony_ci
2717e1c44949Sopenharmony_ci  /**
2718e1c44949Sopenharmony_ci   * Indicates the audio device.
2719e1c44949Sopenharmony_ci   *
2720e1c44949Sopenharmony_ci   * @interface AudioDevice
2721e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2722e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2723e1c44949Sopenharmony_ci   * @since 10
2724e1c44949Sopenharmony_ci   */
2725e1c44949Sopenharmony_ci  export interface AudioDevice {
2726e1c44949Sopenharmony_ci    /**
2727e1c44949Sopenharmony_ci     * Indicates the device type of the audio device.
2728e1c44949Sopenharmony_ci     *
2729e1c44949Sopenharmony_ci     * @type { AudioDeviceType }
2730e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2731e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2732e1c44949Sopenharmony_ci     * @since 10
2733e1c44949Sopenharmony_ci     */
2734e1c44949Sopenharmony_ci    deviceType: AudioDeviceType;
2735e1c44949Sopenharmony_ci
2736e1c44949Sopenharmony_ci    /**
2737e1c44949Sopenharmony_ci     * Indicates the address of the audio device.
2738e1c44949Sopenharmony_ci     *
2739e1c44949Sopenharmony_ci     * @type { ?string }
2740e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2741e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2742e1c44949Sopenharmony_ci     * @since 10
2743e1c44949Sopenharmony_ci     */
2744e1c44949Sopenharmony_ci    address?: string;
2745e1c44949Sopenharmony_ci
2746e1c44949Sopenharmony_ci    /**
2747e1c44949Sopenharmony_ci     * Indicates the name of the audio device.
2748e1c44949Sopenharmony_ci     *
2749e1c44949Sopenharmony_ci     * @type { ?string }
2750e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2751e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2752e1c44949Sopenharmony_ci     * @since 11
2753e1c44949Sopenharmony_ci     */
2754e1c44949Sopenharmony_ci    deviceName?: string;
2755e1c44949Sopenharmony_ci  }
2756e1c44949Sopenharmony_ci
2757e1c44949Sopenharmony_ci  /**
2758e1c44949Sopenharmony_ci   * Indicates the information of the audio device.
2759e1c44949Sopenharmony_ci   *
2760e1c44949Sopenharmony_ci   * @interface AudioDeviceCallbackInfo
2761e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2762e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2763e1c44949Sopenharmony_ci   * @since 10
2764e1c44949Sopenharmony_ci   */
2765e1c44949Sopenharmony_ci  export interface AudioDeviceCallbackInfo {
2766e1c44949Sopenharmony_ci    /**
2767e1c44949Sopenharmony_ci     * Indicates the list of support audio device.
2768e1c44949Sopenharmony_ci     *
2769e1c44949Sopenharmony_ci     * @type { Array<AudioDevice> }
2770e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2771e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2772e1c44949Sopenharmony_ci     * @since 10
2773e1c44949Sopenharmony_ci     */
2774e1c44949Sopenharmony_ci    audioDeviceList: Array<AudioDevice>;
2775e1c44949Sopenharmony_ci
2776e1c44949Sopenharmony_ci    /**
2777e1c44949Sopenharmony_ci     * Indicates the type of current audio device.
2778e1c44949Sopenharmony_ci     *
2779e1c44949Sopenharmony_ci     * @type { AudioDevice }
2780e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2781e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2782e1c44949Sopenharmony_ci     * @since 10
2783e1c44949Sopenharmony_ci     */
2784e1c44949Sopenharmony_ci    currentAudioDevice: AudioDevice;
2785e1c44949Sopenharmony_ci
2786e1c44949Sopenharmony_ci    /**
2787e1c44949Sopenharmony_ci     * Indicates the status of mute.
2788e1c44949Sopenharmony_ci     *
2789e1c44949Sopenharmony_ci     * @type { boolean }
2790e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2791e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2792e1c44949Sopenharmony_ci     * @since 10
2793e1c44949Sopenharmony_ci     */
2794e1c44949Sopenharmony_ci    isMuted: boolean;
2795e1c44949Sopenharmony_ci  }
2796e1c44949Sopenharmony_ci
2797e1c44949Sopenharmony_ci  /**
2798e1c44949Sopenharmony_ci   * Indicates the type of call restriction.
2799e1c44949Sopenharmony_ci   *
2800e1c44949Sopenharmony_ci   * @enum { number }
2801e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2802e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2803e1c44949Sopenharmony_ci   * @since 8
2804e1c44949Sopenharmony_ci   */
2805e1c44949Sopenharmony_ci  export enum CallRestrictionType {
2806e1c44949Sopenharmony_ci    /**
2807e1c44949Sopenharmony_ci     * Indicates restrict all incoming calls.
2808e1c44949Sopenharmony_ci     *
2809e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2810e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2811e1c44949Sopenharmony_ci     * @since 8
2812e1c44949Sopenharmony_ci     */
2813e1c44949Sopenharmony_ci    RESTRICTION_TYPE_ALL_INCOMING = 0,
2814e1c44949Sopenharmony_ci
2815e1c44949Sopenharmony_ci    /**
2816e1c44949Sopenharmony_ci     * Indicates restrict all outgoing calls.
2817e1c44949Sopenharmony_ci     *
2818e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2819e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2820e1c44949Sopenharmony_ci     * @since 8
2821e1c44949Sopenharmony_ci     */
2822e1c44949Sopenharmony_ci    RESTRICTION_TYPE_ALL_OUTGOING,
2823e1c44949Sopenharmony_ci
2824e1c44949Sopenharmony_ci    /**
2825e1c44949Sopenharmony_ci     * Indicates restrict international calls.
2826e1c44949Sopenharmony_ci     *
2827e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2828e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2829e1c44949Sopenharmony_ci     * @since 8
2830e1c44949Sopenharmony_ci     */
2831e1c44949Sopenharmony_ci    RESTRICTION_TYPE_INTERNATIONAL,
2832e1c44949Sopenharmony_ci
2833e1c44949Sopenharmony_ci    /**
2834e1c44949Sopenharmony_ci     * Indicates restrict international roaming calls.
2835e1c44949Sopenharmony_ci     *
2836e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2837e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2838e1c44949Sopenharmony_ci     * @since 8
2839e1c44949Sopenharmony_ci     */
2840e1c44949Sopenharmony_ci    RESTRICTION_TYPE_INTERNATIONAL_EXCLUDING_HOME,
2841e1c44949Sopenharmony_ci
2842e1c44949Sopenharmony_ci    /**
2843e1c44949Sopenharmony_ci     * Indicates restrict roaming calls.
2844e1c44949Sopenharmony_ci     *
2845e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2846e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2847e1c44949Sopenharmony_ci     * @since 8
2848e1c44949Sopenharmony_ci     */
2849e1c44949Sopenharmony_ci    RESTRICTION_TYPE_ROAMING_INCOMING,
2850e1c44949Sopenharmony_ci
2851e1c44949Sopenharmony_ci    /**
2852e1c44949Sopenharmony_ci     * Indicates restrict all calls.
2853e1c44949Sopenharmony_ci     *
2854e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2855e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2856e1c44949Sopenharmony_ci     * @since 8
2857e1c44949Sopenharmony_ci     */
2858e1c44949Sopenharmony_ci    RESTRICTION_TYPE_ALL_CALLS,
2859e1c44949Sopenharmony_ci
2860e1c44949Sopenharmony_ci    /**
2861e1c44949Sopenharmony_ci     * Indicates restrict all outgoing services.
2862e1c44949Sopenharmony_ci     *
2863e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2864e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2865e1c44949Sopenharmony_ci     * @since 8
2866e1c44949Sopenharmony_ci     */
2867e1c44949Sopenharmony_ci    RESTRICTION_TYPE_OUTGOING_SERVICES,
2868e1c44949Sopenharmony_ci
2869e1c44949Sopenharmony_ci    /**
2870e1c44949Sopenharmony_ci     * Indicates restrict all incoming services.
2871e1c44949Sopenharmony_ci     *
2872e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2873e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2874e1c44949Sopenharmony_ci     * @since 8
2875e1c44949Sopenharmony_ci     */
2876e1c44949Sopenharmony_ci    RESTRICTION_TYPE_INCOMING_SERVICES,
2877e1c44949Sopenharmony_ci  }
2878e1c44949Sopenharmony_ci
2879e1c44949Sopenharmony_ci  /**
2880e1c44949Sopenharmony_ci   * Indicates the information of call transfer.
2881e1c44949Sopenharmony_ci   *
2882e1c44949Sopenharmony_ci   * @interface CallTransferInfo
2883e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2884e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2885e1c44949Sopenharmony_ci   * @since 8
2886e1c44949Sopenharmony_ci   */
2887e1c44949Sopenharmony_ci  export interface CallTransferInfo {
2888e1c44949Sopenharmony_ci    /**
2889e1c44949Sopenharmony_ci     * Phone number.
2890e1c44949Sopenharmony_ci     *
2891e1c44949Sopenharmony_ci     * @type { string }
2892e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2893e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2894e1c44949Sopenharmony_ci     * @since 8
2895e1c44949Sopenharmony_ci     */
2896e1c44949Sopenharmony_ci    transferNum: string;
2897e1c44949Sopenharmony_ci
2898e1c44949Sopenharmony_ci    /**
2899e1c44949Sopenharmony_ci     * Call forwarding type.
2900e1c44949Sopenharmony_ci     *
2901e1c44949Sopenharmony_ci     * @type { CallTransferType }
2902e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2903e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2904e1c44949Sopenharmony_ci     * @since 8
2905e1c44949Sopenharmony_ci     */
2906e1c44949Sopenharmony_ci    type: CallTransferType;
2907e1c44949Sopenharmony_ci
2908e1c44949Sopenharmony_ci    /**
2909e1c44949Sopenharmony_ci     * Call forwarding setting type.
2910e1c44949Sopenharmony_ci     *
2911e1c44949Sopenharmony_ci     * @type { CallTransferSettingType }
2912e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2913e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2914e1c44949Sopenharmony_ci     * @since 8
2915e1c44949Sopenharmony_ci     */
2916e1c44949Sopenharmony_ci    settingType: CallTransferSettingType;
2917e1c44949Sopenharmony_ci
2918e1c44949Sopenharmony_ci    /**
2919e1c44949Sopenharmony_ci     * Start time hours.
2920e1c44949Sopenharmony_ci     *
2921e1c44949Sopenharmony_ci     * @type { ?number }
2922e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2923e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2924e1c44949Sopenharmony_ci     * @since 9
2925e1c44949Sopenharmony_ci     */
2926e1c44949Sopenharmony_ci    startHour?: number;
2927e1c44949Sopenharmony_ci
2928e1c44949Sopenharmony_ci    /**
2929e1c44949Sopenharmony_ci     * Start time minutes.
2930e1c44949Sopenharmony_ci     *
2931e1c44949Sopenharmony_ci     * @type { ?number }
2932e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2933e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2934e1c44949Sopenharmony_ci     * @since 9
2935e1c44949Sopenharmony_ci     */
2936e1c44949Sopenharmony_ci    startMinute?: number;
2937e1c44949Sopenharmony_ci
2938e1c44949Sopenharmony_ci    /**
2939e1c44949Sopenharmony_ci     * End time hours.
2940e1c44949Sopenharmony_ci     *
2941e1c44949Sopenharmony_ci     * @type { ?number }
2942e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2943e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2944e1c44949Sopenharmony_ci     * @since 9
2945e1c44949Sopenharmony_ci     */
2946e1c44949Sopenharmony_ci    endHour?: number;
2947e1c44949Sopenharmony_ci
2948e1c44949Sopenharmony_ci    /**
2949e1c44949Sopenharmony_ci     * End time minutes.
2950e1c44949Sopenharmony_ci     *
2951e1c44949Sopenharmony_ci     * @type { ?number }
2952e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2953e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2954e1c44949Sopenharmony_ci     * @since 9
2955e1c44949Sopenharmony_ci     */
2956e1c44949Sopenharmony_ci    endMinute?: number;
2957e1c44949Sopenharmony_ci  }
2958e1c44949Sopenharmony_ci
2959e1c44949Sopenharmony_ci  /**
2960e1c44949Sopenharmony_ci   * Indicates the type of call transfer.
2961e1c44949Sopenharmony_ci   *
2962e1c44949Sopenharmony_ci   * @enum { number }
2963e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
2964e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
2965e1c44949Sopenharmony_ci   * @since 8
2966e1c44949Sopenharmony_ci   */
2967e1c44949Sopenharmony_ci  export enum CallTransferType {
2968e1c44949Sopenharmony_ci    /**
2969e1c44949Sopenharmony_ci     * Indicates unconditional transfer of a call.
2970e1c44949Sopenharmony_ci     *
2971e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2972e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2973e1c44949Sopenharmony_ci     * @since 8
2974e1c44949Sopenharmony_ci     */
2975e1c44949Sopenharmony_ci    TRANSFER_TYPE_UNCONDITIONAL = 0,
2976e1c44949Sopenharmony_ci
2977e1c44949Sopenharmony_ci    /**
2978e1c44949Sopenharmony_ci     * Indicates transfer the call when busy.
2979e1c44949Sopenharmony_ci     *
2980e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2981e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2982e1c44949Sopenharmony_ci     * @since 8
2983e1c44949Sopenharmony_ci     */
2984e1c44949Sopenharmony_ci    TRANSFER_TYPE_BUSY,
2985e1c44949Sopenharmony_ci
2986e1c44949Sopenharmony_ci    /**
2987e1c44949Sopenharmony_ci     * Indicates transfer the call when no reply.
2988e1c44949Sopenharmony_ci     *
2989e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2990e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
2991e1c44949Sopenharmony_ci     * @since 8
2992e1c44949Sopenharmony_ci     */
2993e1c44949Sopenharmony_ci    TRANSFER_TYPE_NO_REPLY,
2994e1c44949Sopenharmony_ci
2995e1c44949Sopenharmony_ci    /**
2996e1c44949Sopenharmony_ci     * Indicates transfer the call when unreachable.
2997e1c44949Sopenharmony_ci     *
2998e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
2999e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3000e1c44949Sopenharmony_ci     * @since 8
3001e1c44949Sopenharmony_ci     */
3002e1c44949Sopenharmony_ci    TRANSFER_TYPE_NOT_REACHABLE,
3003e1c44949Sopenharmony_ci  }
3004e1c44949Sopenharmony_ci
3005e1c44949Sopenharmony_ci  /**
3006e1c44949Sopenharmony_ci   * Indicates the type of call transfer setting.
3007e1c44949Sopenharmony_ci   *
3008e1c44949Sopenharmony_ci   * @enum { number }
3009e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3010e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3011e1c44949Sopenharmony_ci   * @since 8
3012e1c44949Sopenharmony_ci   */
3013e1c44949Sopenharmony_ci  export enum CallTransferSettingType {
3014e1c44949Sopenharmony_ci    /**
3015e1c44949Sopenharmony_ci     * Indicates disable the call transfer.
3016e1c44949Sopenharmony_ci     *
3017e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3018e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3019e1c44949Sopenharmony_ci     * @since 8
3020e1c44949Sopenharmony_ci     */
3021e1c44949Sopenharmony_ci    CALL_TRANSFER_DISABLE = 0,
3022e1c44949Sopenharmony_ci
3023e1c44949Sopenharmony_ci    /**
3024e1c44949Sopenharmony_ci     * Indicates enable the call transfer.
3025e1c44949Sopenharmony_ci     *
3026e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3027e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3028e1c44949Sopenharmony_ci     * @since 8
3029e1c44949Sopenharmony_ci     */
3030e1c44949Sopenharmony_ci    CALL_TRANSFER_ENABLE = 1,
3031e1c44949Sopenharmony_ci
3032e1c44949Sopenharmony_ci    /**
3033e1c44949Sopenharmony_ci     * Indicates register the call transfer.
3034e1c44949Sopenharmony_ci     *
3035e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3036e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3037e1c44949Sopenharmony_ci     * @since 8
3038e1c44949Sopenharmony_ci     */
3039e1c44949Sopenharmony_ci    CALL_TRANSFER_REGISTRATION = 3,
3040e1c44949Sopenharmony_ci
3041e1c44949Sopenharmony_ci    /**
3042e1c44949Sopenharmony_ci     * Indicates erasure the call transfer.
3043e1c44949Sopenharmony_ci     *
3044e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3045e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3046e1c44949Sopenharmony_ci     * @since 8
3047e1c44949Sopenharmony_ci     */
3048e1c44949Sopenharmony_ci    CALL_TRANSFER_ERASURE = 4,
3049e1c44949Sopenharmony_ci  }
3050e1c44949Sopenharmony_ci
3051e1c44949Sopenharmony_ci  /**
3052e1c44949Sopenharmony_ci   * Indicates the options of call attribute.
3053e1c44949Sopenharmony_ci   *
3054e1c44949Sopenharmony_ci   * @interface CallAttributeOptions
3055e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3056e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3057e1c44949Sopenharmony_ci   * @since 7
3058e1c44949Sopenharmony_ci   */
3059e1c44949Sopenharmony_ci  export interface CallAttributeOptions {
3060e1c44949Sopenharmony_ci    /**
3061e1c44949Sopenharmony_ci     * Indicates the number of account.
3062e1c44949Sopenharmony_ci     *
3063e1c44949Sopenharmony_ci     * @type { string }
3064e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3065e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3066e1c44949Sopenharmony_ci     * @since 7
3067e1c44949Sopenharmony_ci     */
3068e1c44949Sopenharmony_ci    accountNumber: string;
3069e1c44949Sopenharmony_ci
3070e1c44949Sopenharmony_ci    /**
3071e1c44949Sopenharmony_ci     * Indicates if the call is start with speaker.
3072e1c44949Sopenharmony_ci     *
3073e1c44949Sopenharmony_ci     * @type { boolean }
3074e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3075e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3076e1c44949Sopenharmony_ci     * @since 7
3077e1c44949Sopenharmony_ci     */
3078e1c44949Sopenharmony_ci    speakerphoneOn: boolean;
3079e1c44949Sopenharmony_ci
3080e1c44949Sopenharmony_ci    /**
3081e1c44949Sopenharmony_ci     * Indicates the id of account.
3082e1c44949Sopenharmony_ci     *
3083e1c44949Sopenharmony_ci     * @type { number }
3084e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3085e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3086e1c44949Sopenharmony_ci     * @since 7
3087e1c44949Sopenharmony_ci     */
3088e1c44949Sopenharmony_ci    accountId: number;
3089e1c44949Sopenharmony_ci
3090e1c44949Sopenharmony_ci    /**
3091e1c44949Sopenharmony_ci     * Indicates the type of video state.
3092e1c44949Sopenharmony_ci     *
3093e1c44949Sopenharmony_ci     * @type { VideoStateType }
3094e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3095e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3096e1c44949Sopenharmony_ci     * @since 7
3097e1c44949Sopenharmony_ci     */
3098e1c44949Sopenharmony_ci    videoState: VideoStateType;
3099e1c44949Sopenharmony_ci
3100e1c44949Sopenharmony_ci    /**
3101e1c44949Sopenharmony_ci     * Indicates the start time.
3102e1c44949Sopenharmony_ci     *
3103e1c44949Sopenharmony_ci     * @type { number }
3104e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3105e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3106e1c44949Sopenharmony_ci     * @since 7
3107e1c44949Sopenharmony_ci     */
3108e1c44949Sopenharmony_ci    startTime: number;
3109e1c44949Sopenharmony_ci
3110e1c44949Sopenharmony_ci    /**
3111e1c44949Sopenharmony_ci     * Indicates if this is an emergency call.
3112e1c44949Sopenharmony_ci     *
3113e1c44949Sopenharmony_ci     * @type { boolean }
3114e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3115e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3116e1c44949Sopenharmony_ci     * @since 7
3117e1c44949Sopenharmony_ci     */
3118e1c44949Sopenharmony_ci    isEcc: boolean;
3119e1c44949Sopenharmony_ci
3120e1c44949Sopenharmony_ci    /**
3121e1c44949Sopenharmony_ci     * Indicates the type of call.
3122e1c44949Sopenharmony_ci     *
3123e1c44949Sopenharmony_ci     * @type { CallType }
3124e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3125e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3126e1c44949Sopenharmony_ci     * @since 7
3127e1c44949Sopenharmony_ci     */
3128e1c44949Sopenharmony_ci    callType: CallType;
3129e1c44949Sopenharmony_ci
3130e1c44949Sopenharmony_ci    /**
3131e1c44949Sopenharmony_ci     * Indicates the id of call.
3132e1c44949Sopenharmony_ci     *
3133e1c44949Sopenharmony_ci     * @type { number }
3134e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3135e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3136e1c44949Sopenharmony_ci     * @since 7
3137e1c44949Sopenharmony_ci     */
3138e1c44949Sopenharmony_ci    callId: number;
3139e1c44949Sopenharmony_ci
3140e1c44949Sopenharmony_ci    /**
3141e1c44949Sopenharmony_ci     * Indicates the detailed state of call.
3142e1c44949Sopenharmony_ci     *
3143e1c44949Sopenharmony_ci     * @type { DetailedCallState }
3144e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3145e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3146e1c44949Sopenharmony_ci     * @since 7
3147e1c44949Sopenharmony_ci     */
3148e1c44949Sopenharmony_ci    callState: DetailedCallState;
3149e1c44949Sopenharmony_ci
3150e1c44949Sopenharmony_ci    /**
3151e1c44949Sopenharmony_ci     * Indicates the state of conference.
3152e1c44949Sopenharmony_ci     *
3153e1c44949Sopenharmony_ci     * @type { ConferenceState }
3154e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3155e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3156e1c44949Sopenharmony_ci     * @since 7
3157e1c44949Sopenharmony_ci     */
3158e1c44949Sopenharmony_ci    conferenceState: ConferenceState;
3159e1c44949Sopenharmony_ci
3160e1c44949Sopenharmony_ci    /**
3161e1c44949Sopenharmony_ci     * Indicates the detail information of voip call.
3162e1c44949Sopenharmony_ci     *
3163e1c44949Sopenharmony_ci     * @type { ?VoipCallAttribute }
3164e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3165e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3166e1c44949Sopenharmony_ci     * @since 11
3167e1c44949Sopenharmony_ci     */
3168e1c44949Sopenharmony_ci    voipCallAttribute?: VoipCallAttribute;
3169e1c44949Sopenharmony_ci
3170e1c44949Sopenharmony_ci    /**
3171e1c44949Sopenharmony_ci     * Indicates the color tone type.
3172e1c44949Sopenharmony_ci     *
3173e1c44949Sopenharmony_ci     * @type { number }
3174e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3175e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3176e1c44949Sopenharmony_ci     * @since 11
3177e1c44949Sopenharmony_ci     */
3178e1c44949Sopenharmony_ci    crsType: number;
3179e1c44949Sopenharmony_ci  
3180e1c44949Sopenharmony_ci    /**
3181e1c44949Sopenharmony_ci     * Indicates the initial type of this call.
3182e1c44949Sopenharmony_ci     *
3183e1c44949Sopenharmony_ci     * @type { number }
3184e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3185e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3186e1c44949Sopenharmony_ci     * @since 11
3187e1c44949Sopenharmony_ci     */
3188e1c44949Sopenharmony_ci    originalCallType: number;
3189e1c44949Sopenharmony_ci
3190e1c44949Sopenharmony_ci    /**
3191e1c44949Sopenharmony_ci     * Indicates the location of the phone number.
3192e1c44949Sopenharmony_ci     *
3193e1c44949Sopenharmony_ci     * @type { ?string }
3194e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3195e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3196e1c44949Sopenharmony_ci     * @since 12
3197e1c44949Sopenharmony_ci     */
3198e1c44949Sopenharmony_ci    numberLocation?: string;
3199e1c44949Sopenharmony_ci
3200e1c44949Sopenharmony_ci    /**
3201e1c44949Sopenharmony_ci     * Indicates the mark information of the phone number.
3202e1c44949Sopenharmony_ci     *
3203e1c44949Sopenharmony_ci     * @type { ?NumberMarkInfo }
3204e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3205e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3206e1c44949Sopenharmony_ci     * @since 12
3207e1c44949Sopenharmony_ci     */
3208e1c44949Sopenharmony_ci    numberMarkInfo?: NumberMarkInfo;
3209e1c44949Sopenharmony_ci  }
3210e1c44949Sopenharmony_ci
3211e1c44949Sopenharmony_ci  /**
3212e1c44949Sopenharmony_ci   * Indicates the voip call detail information.
3213e1c44949Sopenharmony_ci   *
3214e1c44949Sopenharmony_ci   * @interface VoipCallAttribute
3215e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3216e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3217e1c44949Sopenharmony_ci   * @since 11
3218e1c44949Sopenharmony_ci   */
3219e1c44949Sopenharmony_ci  export interface VoipCallAttribute {
3220e1c44949Sopenharmony_ci    /**
3221e1c44949Sopenharmony_ci     * Indicates the identifier of the voip call.
3222e1c44949Sopenharmony_ci     *
3223e1c44949Sopenharmony_ci     * @type { string }
3224e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3225e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3226e1c44949Sopenharmony_ci     * @since 11
3227e1c44949Sopenharmony_ci     */
3228e1c44949Sopenharmony_ci    voipCallId: string;
3229e1c44949Sopenharmony_ci
3230e1c44949Sopenharmony_ci    /**
3231e1c44949Sopenharmony_ci     * Indicates the user name of the VoIP call.
3232e1c44949Sopenharmony_ci     *
3233e1c44949Sopenharmony_ci     * @type { string }
3234e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3235e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3236e1c44949Sopenharmony_ci     * @since 11
3237e1c44949Sopenharmony_ci     */
3238e1c44949Sopenharmony_ci    userName: string;
3239e1c44949Sopenharmony_ci
3240e1c44949Sopenharmony_ci    /**
3241e1c44949Sopenharmony_ci     * Indicates the user profile photo of the VoIP call.
3242e1c44949Sopenharmony_ci     *
3243e1c44949Sopenharmony_ci     * @type { image.PixelMap }
3244e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3245e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3246e1c44949Sopenharmony_ci     * @since 11
3247e1c44949Sopenharmony_ci     */
3248e1c44949Sopenharmony_ci    userProfile: image.PixelMap;
3249e1c44949Sopenharmony_ci
3250e1c44949Sopenharmony_ci    /**
3251e1c44949Sopenharmony_ci     * Indicates the third-party application process specific identifier.
3252e1c44949Sopenharmony_ci     *
3253e1c44949Sopenharmony_ci     * @type { string }
3254e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3255e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3256e1c44949Sopenharmony_ci     * @since 11
3257e1c44949Sopenharmony_ci     */
3258e1c44949Sopenharmony_ci    extensionId: string;
3259e1c44949Sopenharmony_ci
3260e1c44949Sopenharmony_ci    /**
3261e1c44949Sopenharmony_ci     * Indicates the third-party application UI extension ability name.
3262e1c44949Sopenharmony_ci     *
3263e1c44949Sopenharmony_ci     * @type { string }
3264e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3265e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3266e1c44949Sopenharmony_ci     * @since 11
3267e1c44949Sopenharmony_ci     */
3268e1c44949Sopenharmony_ci    abilityName: string;
3269e1c44949Sopenharmony_ci
3270e1c44949Sopenharmony_ci    /**
3271e1c44949Sopenharmony_ci     * Indicates the third-party application bundle name.
3272e1c44949Sopenharmony_ci     *
3273e1c44949Sopenharmony_ci     * @type { string }
3274e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3275e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3276e1c44949Sopenharmony_ci     * @since 11
3277e1c44949Sopenharmony_ci     */
3278e1c44949Sopenharmony_ci    voipBundleName: string;
3279e1c44949Sopenharmony_ci
3280e1c44949Sopenharmony_ci    /**
3281e1c44949Sopenharmony_ci     * Indicates whether the VoIP incoming call default show live call banner. Default value is true.
3282e1c44949Sopenharmony_ci     *
3283e1c44949Sopenharmony_ci     * @type { ?boolean }
3284e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3285e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3286e1c44949Sopenharmony_ci     * @since 12
3287e1c44949Sopenharmony_ci     */
3288e1c44949Sopenharmony_ci    showBannerForIncomingCall?: boolean;
3289e1c44949Sopenharmony_ci  }
3290e1c44949Sopenharmony_ci
3291e1c44949Sopenharmony_ci  /**
3292e1c44949Sopenharmony_ci   * Indicates the state of conference call.
3293e1c44949Sopenharmony_ci   *
3294e1c44949Sopenharmony_ci   * @enum { number }
3295e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3296e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3297e1c44949Sopenharmony_ci   * @since 7
3298e1c44949Sopenharmony_ci   */
3299e1c44949Sopenharmony_ci  export enum ConferenceState {
3300e1c44949Sopenharmony_ci    /**
3301e1c44949Sopenharmony_ci     * Indicates the state is idle.
3302e1c44949Sopenharmony_ci     *
3303e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3304e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3305e1c44949Sopenharmony_ci     * @since 7
3306e1c44949Sopenharmony_ci     */
3307e1c44949Sopenharmony_ci    TEL_CONFERENCE_IDLE = 0,
3308e1c44949Sopenharmony_ci
3309e1c44949Sopenharmony_ci    /**
3310e1c44949Sopenharmony_ci     * Indicates the state is active.
3311e1c44949Sopenharmony_ci     *
3312e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3313e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3314e1c44949Sopenharmony_ci     * @since 7
3315e1c44949Sopenharmony_ci     */
3316e1c44949Sopenharmony_ci    TEL_CONFERENCE_ACTIVE,
3317e1c44949Sopenharmony_ci
3318e1c44949Sopenharmony_ci    /**
3319e1c44949Sopenharmony_ci     * Indicates the state is disconnecting.
3320e1c44949Sopenharmony_ci     *
3321e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3322e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3323e1c44949Sopenharmony_ci     * @since 7
3324e1c44949Sopenharmony_ci     */
3325e1c44949Sopenharmony_ci    TEL_CONFERENCE_DISCONNECTING,
3326e1c44949Sopenharmony_ci
3327e1c44949Sopenharmony_ci    /**
3328e1c44949Sopenharmony_ci     * Indicates the state is disconnected.
3329e1c44949Sopenharmony_ci     *
3330e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3331e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3332e1c44949Sopenharmony_ci     * @since 7
3333e1c44949Sopenharmony_ci     */
3334e1c44949Sopenharmony_ci    TEL_CONFERENCE_DISCONNECTED,
3335e1c44949Sopenharmony_ci  }
3336e1c44949Sopenharmony_ci
3337e1c44949Sopenharmony_ci  /**
3338e1c44949Sopenharmony_ci   * Indicates the type of call.
3339e1c44949Sopenharmony_ci   *
3340e1c44949Sopenharmony_ci   * @enum { number }
3341e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3342e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3343e1c44949Sopenharmony_ci   * @since 7
3344e1c44949Sopenharmony_ci   */
3345e1c44949Sopenharmony_ci  export enum CallType {
3346e1c44949Sopenharmony_ci    /**
3347e1c44949Sopenharmony_ci     * Indicates the call type is CS.
3348e1c44949Sopenharmony_ci     *
3349e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3350e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3351e1c44949Sopenharmony_ci     * @since 7
3352e1c44949Sopenharmony_ci     */
3353e1c44949Sopenharmony_ci    TYPE_CS = 0,
3354e1c44949Sopenharmony_ci
3355e1c44949Sopenharmony_ci    /**
3356e1c44949Sopenharmony_ci     * Indicates the call type is IMS.
3357e1c44949Sopenharmony_ci     *
3358e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3359e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3360e1c44949Sopenharmony_ci     * @since 7
3361e1c44949Sopenharmony_ci     */
3362e1c44949Sopenharmony_ci    TYPE_IMS = 1,
3363e1c44949Sopenharmony_ci
3364e1c44949Sopenharmony_ci    /**
3365e1c44949Sopenharmony_ci     * Indicates the call type is OTT.
3366e1c44949Sopenharmony_ci     *
3367e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3368e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3369e1c44949Sopenharmony_ci     * @since 7
3370e1c44949Sopenharmony_ci     */
3371e1c44949Sopenharmony_ci    TYPE_OTT = 2,
3372e1c44949Sopenharmony_ci
3373e1c44949Sopenharmony_ci    /**
3374e1c44949Sopenharmony_ci     * Indicates the call type is OTHER.
3375e1c44949Sopenharmony_ci     *
3376e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3377e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3378e1c44949Sopenharmony_ci     * @since 7
3379e1c44949Sopenharmony_ci     */
3380e1c44949Sopenharmony_ci    TYPE_ERR_CALL = 3,
3381e1c44949Sopenharmony_ci
3382e1c44949Sopenharmony_ci    /**
3383e1c44949Sopenharmony_ci     * Indicates the call type is VoIP.
3384e1c44949Sopenharmony_ci     *
3385e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3386e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3387e1c44949Sopenharmony_ci     * @since 11
3388e1c44949Sopenharmony_ci     */
3389e1c44949Sopenharmony_ci    TYPE_VOIP = 4,
3390e1c44949Sopenharmony_ci  }
3391e1c44949Sopenharmony_ci
3392e1c44949Sopenharmony_ci  /**
3393e1c44949Sopenharmony_ci   * Indicates the type of video state.
3394e1c44949Sopenharmony_ci   *
3395e1c44949Sopenharmony_ci   * @enum { number }
3396e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3397e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3398e1c44949Sopenharmony_ci   * @since 7
3399e1c44949Sopenharmony_ci   */
3400e1c44949Sopenharmony_ci  export enum VideoStateType {
3401e1c44949Sopenharmony_ci    /**
3402e1c44949Sopenharmony_ci     * Indicates the call is in voice state.
3403e1c44949Sopenharmony_ci     *
3404e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3405e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3406e1c44949Sopenharmony_ci     * @since 7
3407e1c44949Sopenharmony_ci     */
3408e1c44949Sopenharmony_ci    TYPE_VOICE = 0,
3409e1c44949Sopenharmony_ci    /**
3410e1c44949Sopenharmony_ci     * Indicates the call is in video state.
3411e1c44949Sopenharmony_ci     *
3412e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3413e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3414e1c44949Sopenharmony_ci     * @since 7
3415e1c44949Sopenharmony_ci     * @deprecated since 11
3416e1c44949Sopenharmony_ci     * @useinstead telephony.call#TYPE_VIDEO_BIDIRECTIONAL
3417e1c44949Sopenharmony_ci     */
3418e1c44949Sopenharmony_ci    TYPE_VIDEO,
3419e1c44949Sopenharmony_ci    /**
3420e1c44949Sopenharmony_ci     * Indicates the call is in send only video state.
3421e1c44949Sopenharmony_ci     *
3422e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3423e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3424e1c44949Sopenharmony_ci     * @since 11
3425e1c44949Sopenharmony_ci     */
3426e1c44949Sopenharmony_ci    TYPE_VIDEO_SEND_ONLY = 1,
3427e1c44949Sopenharmony_ci    /**
3428e1c44949Sopenharmony_ci     * Indicates the call is in receive only video state.
3429e1c44949Sopenharmony_ci     *
3430e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3431e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3432e1c44949Sopenharmony_ci     * @since 11
3433e1c44949Sopenharmony_ci     */
3434e1c44949Sopenharmony_ci    TYPE_VIDEO_RECEIVE_ONLY,
3435e1c44949Sopenharmony_ci    /**
3436e1c44949Sopenharmony_ci     * Indicates the call is in send and receive video state.
3437e1c44949Sopenharmony_ci     *
3438e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3439e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3440e1c44949Sopenharmony_ci     * @since 11
3441e1c44949Sopenharmony_ci     */
3442e1c44949Sopenharmony_ci    TYPE_VIDEO_BIDIRECTIONAL,
3443e1c44949Sopenharmony_ci  }
3444e1c44949Sopenharmony_ci
3445e1c44949Sopenharmony_ci  /**
3446e1c44949Sopenharmony_ci   * Indicates the type of video request result.
3447e1c44949Sopenharmony_ci   *
3448e1c44949Sopenharmony_ci   * @enum { number }
3449e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3450e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3451e1c44949Sopenharmony_ci   * @since 11
3452e1c44949Sopenharmony_ci   */
3453e1c44949Sopenharmony_ci  export enum VideoRequestResultType {
3454e1c44949Sopenharmony_ci    /**
3455e1c44949Sopenharmony_ci     * Indicates the request was successful.
3456e1c44949Sopenharmony_ci     *
3457e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3458e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3459e1c44949Sopenharmony_ci     * @since 11
3460e1c44949Sopenharmony_ci     */
3461e1c44949Sopenharmony_ci    TYPE_REQUEST_SUCCESS = 0,
3462e1c44949Sopenharmony_ci    /**
3463e1c44949Sopenharmony_ci     * Indicates the request failed.
3464e1c44949Sopenharmony_ci     *
3465e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3466e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3467e1c44949Sopenharmony_ci     * @since 11
3468e1c44949Sopenharmony_ci     */
3469e1c44949Sopenharmony_ci    TYPE_REQUEST_FAILURE,
3470e1c44949Sopenharmony_ci    /**
3471e1c44949Sopenharmony_ci     * Indicates the request ignored due to invalid parameters.
3472e1c44949Sopenharmony_ci     *
3473e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3474e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3475e1c44949Sopenharmony_ci     * @since 11
3476e1c44949Sopenharmony_ci     */
3477e1c44949Sopenharmony_ci    TYPE_REQUEST_INVALID,
3478e1c44949Sopenharmony_ci    /**
3479e1c44949Sopenharmony_ci     * Indicates the request timed out.
3480e1c44949Sopenharmony_ci     *
3481e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3482e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3483e1c44949Sopenharmony_ci     * @since 11
3484e1c44949Sopenharmony_ci     */
3485e1c44949Sopenharmony_ci    TYPE_REQUEST_TIMED_OUT,
3486e1c44949Sopenharmony_ci    /**
3487e1c44949Sopenharmony_ci     * Indicates the request rejected by remote.
3488e1c44949Sopenharmony_ci     *
3489e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3490e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3491e1c44949Sopenharmony_ci     * @since 11
3492e1c44949Sopenharmony_ci     */
3493e1c44949Sopenharmony_ci    TYPE_REQUEST_REJECTED_BY_REMOTE,
3494e1c44949Sopenharmony_ci    /**
3495e1c44949Sopenharmony_ci     * Indicates the upgrade request canceled.
3496e1c44949Sopenharmony_ci     *
3497e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3498e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3499e1c44949Sopenharmony_ci     * @since 11
3500e1c44949Sopenharmony_ci     */
3501e1c44949Sopenharmony_ci    TYPE_REQUEST_UPGRADE_CANCELED,
3502e1c44949Sopenharmony_ci    /**
3503e1c44949Sopenharmony_ci     * Indicates the ImsCall Mode downgrade RTP time out.
3504e1c44949Sopenharmony_ci     *
3505e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3506e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3507e1c44949Sopenharmony_ci     * @since 11
3508e1c44949Sopenharmony_ci     */
3509e1c44949Sopenharmony_ci    TYPE_DOWNGRADE_RTP_OR_RTCP_TIMEOUT = 100,
3510e1c44949Sopenharmony_ci    /**
3511e1c44949Sopenharmony_ci     * Indicates the ImsCall Mode downgrade RTP and RTCP time out.
3512e1c44949Sopenharmony_ci     *
3513e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3514e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3515e1c44949Sopenharmony_ci     * @since 11
3516e1c44949Sopenharmony_ci     */
3517e1c44949Sopenharmony_ci    TYPE_DOWNGRADE_RTP_AND_RTCP_TIMEOUT,
3518e1c44949Sopenharmony_ci  }
3519e1c44949Sopenharmony_ci
3520e1c44949Sopenharmony_ci  /**
3521e1c44949Sopenharmony_ci   * Indicates the type of device direction.
3522e1c44949Sopenharmony_ci   *
3523e1c44949Sopenharmony_ci   * @enum { number }
3524e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3525e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3526e1c44949Sopenharmony_ci   * @since 11
3527e1c44949Sopenharmony_ci   */
3528e1c44949Sopenharmony_ci  export enum DeviceDirection {
3529e1c44949Sopenharmony_ci    /**
3530e1c44949Sopenharmony_ci     * Indicates the device direction is 0 degree.
3531e1c44949Sopenharmony_ci     *
3532e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3533e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3534e1c44949Sopenharmony_ci     * @since 11
3535e1c44949Sopenharmony_ci     */
3536e1c44949Sopenharmony_ci    DEVICE_DIRECTION_0 = 0,
3537e1c44949Sopenharmony_ci    /**
3538e1c44949Sopenharmony_ci     * Indicates the device direction is 90 degree.
3539e1c44949Sopenharmony_ci     *
3540e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3541e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3542e1c44949Sopenharmony_ci     * @since 11
3543e1c44949Sopenharmony_ci     */
3544e1c44949Sopenharmony_ci    DEVICE_DIRECTION_90 = 90,
3545e1c44949Sopenharmony_ci    /**
3546e1c44949Sopenharmony_ci     * Indicates the device direction is 180 degree.
3547e1c44949Sopenharmony_ci     *
3548e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3549e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3550e1c44949Sopenharmony_ci     * @since 11
3551e1c44949Sopenharmony_ci     */
3552e1c44949Sopenharmony_ci    DEVICE_DIRECTION_180 = 180,
3553e1c44949Sopenharmony_ci    /**
3554e1c44949Sopenharmony_ci     * Indicates the device direction is 270 degree.
3555e1c44949Sopenharmony_ci     *
3556e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3557e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3558e1c44949Sopenharmony_ci     * @since 11
3559e1c44949Sopenharmony_ci     */
3560e1c44949Sopenharmony_ci    DEVICE_DIRECTION_270 = 270,
3561e1c44949Sopenharmony_ci  }
3562e1c44949Sopenharmony_ci
3563e1c44949Sopenharmony_ci  /**
3564e1c44949Sopenharmony_ci   * Indicates the type of video call event.
3565e1c44949Sopenharmony_ci   *
3566e1c44949Sopenharmony_ci   * @enum { number }
3567e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3568e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3569e1c44949Sopenharmony_ci   * @since 11
3570e1c44949Sopenharmony_ci   */
3571e1c44949Sopenharmony_ci  export enum CallSessionEventId {
3572e1c44949Sopenharmony_ci    /**
3573e1c44949Sopenharmony_ci     * Indicates set camera fail event.
3574e1c44949Sopenharmony_ci     *
3575e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3576e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3577e1c44949Sopenharmony_ci     * @since 11
3578e1c44949Sopenharmony_ci     */
3579e1c44949Sopenharmony_ci    EVENT_CONTROL_CAMERA_FAILURE = 0,
3580e1c44949Sopenharmony_ci    /**
3581e1c44949Sopenharmony_ci     * Indicates set camera successful event.
3582e1c44949Sopenharmony_ci     *
3583e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3584e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3585e1c44949Sopenharmony_ci     * @since 11
3586e1c44949Sopenharmony_ci     */
3587e1c44949Sopenharmony_ci    EVENT_CONTROL_CAMERA_READY,
3588e1c44949Sopenharmony_ci    /**
3589e1c44949Sopenharmony_ci     * Indicates release display surface event.
3590e1c44949Sopenharmony_ci     *
3591e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3592e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3593e1c44949Sopenharmony_ci     * @since 11
3594e1c44949Sopenharmony_ci     */
3595e1c44949Sopenharmony_ci    EVENT_DISPLAY_SURFACE_RELEASED = 100,
3596e1c44949Sopenharmony_ci    /**
3597e1c44949Sopenharmony_ci     * Indicates release preview surface event.
3598e1c44949Sopenharmony_ci     *
3599e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3600e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3601e1c44949Sopenharmony_ci     * @since 11
3602e1c44949Sopenharmony_ci     */
3603e1c44949Sopenharmony_ci    EVENT_PREVIEW_SURFACE_RELEASED,
3604e1c44949Sopenharmony_ci  }
3605e1c44949Sopenharmony_ci
3606e1c44949Sopenharmony_ci  /**
3607e1c44949Sopenharmony_ci   * Indicates the detailed state of call.
3608e1c44949Sopenharmony_ci   *
3609e1c44949Sopenharmony_ci   * @enum { number }
3610e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3611e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3612e1c44949Sopenharmony_ci   * @since 7
3613e1c44949Sopenharmony_ci   */
3614e1c44949Sopenharmony_ci  export enum DetailedCallState {
3615e1c44949Sopenharmony_ci    /**
3616e1c44949Sopenharmony_ci     * Indicates the call is active.
3617e1c44949Sopenharmony_ci     *
3618e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3619e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3620e1c44949Sopenharmony_ci     * @since 7
3621e1c44949Sopenharmony_ci     */
3622e1c44949Sopenharmony_ci    CALL_STATUS_ACTIVE = 0,
3623e1c44949Sopenharmony_ci
3624e1c44949Sopenharmony_ci    /**
3625e1c44949Sopenharmony_ci     * Indicates the call is holding.
3626e1c44949Sopenharmony_ci     *
3627e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3628e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3629e1c44949Sopenharmony_ci     * @since 7
3630e1c44949Sopenharmony_ci     */
3631e1c44949Sopenharmony_ci    CALL_STATUS_HOLDING,
3632e1c44949Sopenharmony_ci
3633e1c44949Sopenharmony_ci    /**
3634e1c44949Sopenharmony_ci     * Indicates the call is dialing.
3635e1c44949Sopenharmony_ci     *
3636e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3637e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3638e1c44949Sopenharmony_ci     * @since 7
3639e1c44949Sopenharmony_ci     */
3640e1c44949Sopenharmony_ci    CALL_STATUS_DIALING,
3641e1c44949Sopenharmony_ci
3642e1c44949Sopenharmony_ci    /**
3643e1c44949Sopenharmony_ci     * Indicates the call is alerting.
3644e1c44949Sopenharmony_ci     *
3645e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3646e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3647e1c44949Sopenharmony_ci     * @since 7
3648e1c44949Sopenharmony_ci     */
3649e1c44949Sopenharmony_ci    CALL_STATUS_ALERTING,
3650e1c44949Sopenharmony_ci
3651e1c44949Sopenharmony_ci    /**
3652e1c44949Sopenharmony_ci     * Indicates the call is incoming.
3653e1c44949Sopenharmony_ci     *
3654e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3655e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3656e1c44949Sopenharmony_ci     * @since 7
3657e1c44949Sopenharmony_ci     */
3658e1c44949Sopenharmony_ci    CALL_STATUS_INCOMING,
3659e1c44949Sopenharmony_ci
3660e1c44949Sopenharmony_ci    /**
3661e1c44949Sopenharmony_ci     * Indicates the call is waiting.
3662e1c44949Sopenharmony_ci     *
3663e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3664e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3665e1c44949Sopenharmony_ci     * @since 7
3666e1c44949Sopenharmony_ci     */
3667e1c44949Sopenharmony_ci    CALL_STATUS_WAITING,
3668e1c44949Sopenharmony_ci
3669e1c44949Sopenharmony_ci    /**
3670e1c44949Sopenharmony_ci     * Indicates the call is disconnected.
3671e1c44949Sopenharmony_ci     *
3672e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3673e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3674e1c44949Sopenharmony_ci     * @since 7
3675e1c44949Sopenharmony_ci     */
3676e1c44949Sopenharmony_ci    CALL_STATUS_DISCONNECTED,
3677e1c44949Sopenharmony_ci
3678e1c44949Sopenharmony_ci    /**
3679e1c44949Sopenharmony_ci     * Indicates the call is disconnecting.
3680e1c44949Sopenharmony_ci     *
3681e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3682e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3683e1c44949Sopenharmony_ci     * @since 7
3684e1c44949Sopenharmony_ci     */
3685e1c44949Sopenharmony_ci    CALL_STATUS_DISCONNECTING,
3686e1c44949Sopenharmony_ci
3687e1c44949Sopenharmony_ci    /**
3688e1c44949Sopenharmony_ci     * Indicates the call is idle.
3689e1c44949Sopenharmony_ci     *
3690e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3691e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3692e1c44949Sopenharmony_ci     * @since 7
3693e1c44949Sopenharmony_ci     */
3694e1c44949Sopenharmony_ci    CALL_STATUS_IDLE,
3695e1c44949Sopenharmony_ci  }
3696e1c44949Sopenharmony_ci
3697e1c44949Sopenharmony_ci  /**
3698e1c44949Sopenharmony_ci   * Indicates the information of call restriction.
3699e1c44949Sopenharmony_ci   *
3700e1c44949Sopenharmony_ci   * @interface CallRestrictionInfo
3701e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3702e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3703e1c44949Sopenharmony_ci   * @since 8
3704e1c44949Sopenharmony_ci   */
3705e1c44949Sopenharmony_ci  export interface CallRestrictionInfo {
3706e1c44949Sopenharmony_ci    /**
3707e1c44949Sopenharmony_ci     * Indicates the type of call restriction.
3708e1c44949Sopenharmony_ci     *
3709e1c44949Sopenharmony_ci     * @type { CallRestrictionType }
3710e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3711e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3712e1c44949Sopenharmony_ci     * @since 8
3713e1c44949Sopenharmony_ci     */
3714e1c44949Sopenharmony_ci    type: CallRestrictionType;
3715e1c44949Sopenharmony_ci
3716e1c44949Sopenharmony_ci    /**
3717e1c44949Sopenharmony_ci     * Indicates the password required to set call restrictions.
3718e1c44949Sopenharmony_ci     *
3719e1c44949Sopenharmony_ci     * @type { string }
3720e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3721e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3722e1c44949Sopenharmony_ci     * @since 8
3723e1c44949Sopenharmony_ci     */
3724e1c44949Sopenharmony_ci    password: string;
3725e1c44949Sopenharmony_ci
3726e1c44949Sopenharmony_ci    /**
3727e1c44949Sopenharmony_ci     * Indicates the mode of call restriction.
3728e1c44949Sopenharmony_ci     *
3729e1c44949Sopenharmony_ci     * @type { CallRestrictionMode }
3730e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3731e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3732e1c44949Sopenharmony_ci     * @since 8
3733e1c44949Sopenharmony_ci     */
3734e1c44949Sopenharmony_ci    mode: CallRestrictionMode;
3735e1c44949Sopenharmony_ci  }
3736e1c44949Sopenharmony_ci
3737e1c44949Sopenharmony_ci  /**
3738e1c44949Sopenharmony_ci   * Indicates the mode of call restriction.
3739e1c44949Sopenharmony_ci   *
3740e1c44949Sopenharmony_ci   * @enum { number }
3741e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3742e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3743e1c44949Sopenharmony_ci   * @since 8
3744e1c44949Sopenharmony_ci   */
3745e1c44949Sopenharmony_ci  export enum CallRestrictionMode {
3746e1c44949Sopenharmony_ci    /**
3747e1c44949Sopenharmony_ci     * Indicates call restriction is deactivated.
3748e1c44949Sopenharmony_ci     *
3749e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3750e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3751e1c44949Sopenharmony_ci     * @since 8
3752e1c44949Sopenharmony_ci     */
3753e1c44949Sopenharmony_ci    RESTRICTION_MODE_DEACTIVATION = 0,
3754e1c44949Sopenharmony_ci
3755e1c44949Sopenharmony_ci    /**
3756e1c44949Sopenharmony_ci     * Indicates call restriction is activated.
3757e1c44949Sopenharmony_ci     *
3758e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3759e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3760e1c44949Sopenharmony_ci     * @since 8
3761e1c44949Sopenharmony_ci     */
3762e1c44949Sopenharmony_ci    RESTRICTION_MODE_ACTIVATION,
3763e1c44949Sopenharmony_ci  }
3764e1c44949Sopenharmony_ci
3765e1c44949Sopenharmony_ci  /**
3766e1c44949Sopenharmony_ci   * Indicates the options of call event.
3767e1c44949Sopenharmony_ci   *
3768e1c44949Sopenharmony_ci   * @interface CallEventOptions
3769e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3770e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3771e1c44949Sopenharmony_ci   * @since 8
3772e1c44949Sopenharmony_ci   */
3773e1c44949Sopenharmony_ci  export interface CallEventOptions {
3774e1c44949Sopenharmony_ci    /**
3775e1c44949Sopenharmony_ci     * Indicates the event ID of call ability.
3776e1c44949Sopenharmony_ci     *
3777e1c44949Sopenharmony_ci     * @type { CallAbilityEventId }
3778e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3779e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3780e1c44949Sopenharmony_ci     * @since 8
3781e1c44949Sopenharmony_ci     */
3782e1c44949Sopenharmony_ci    eventId: CallAbilityEventId,
3783e1c44949Sopenharmony_ci  }
3784e1c44949Sopenharmony_ci
3785e1c44949Sopenharmony_ci  /**
3786e1c44949Sopenharmony_ci   * Indicates the event ID of call ability.
3787e1c44949Sopenharmony_ci   *
3788e1c44949Sopenharmony_ci   * @enum { number }
3789e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3790e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3791e1c44949Sopenharmony_ci   * @since 8
3792e1c44949Sopenharmony_ci   */
3793e1c44949Sopenharmony_ci  export enum CallAbilityEventId {
3794e1c44949Sopenharmony_ci    /**
3795e1c44949Sopenharmony_ci     * Indicates there is no available carrier during dialing.
3796e1c44949Sopenharmony_ci     *
3797e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3798e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3799e1c44949Sopenharmony_ci     * @since 8
3800e1c44949Sopenharmony_ci     */
3801e1c44949Sopenharmony_ci    EVENT_DIAL_NO_CARRIER = 1,
3802e1c44949Sopenharmony_ci
3803e1c44949Sopenharmony_ci    /**
3804e1c44949Sopenharmony_ci     * Indicates invalid FDN.
3805e1c44949Sopenharmony_ci     *
3806e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3807e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3808e1c44949Sopenharmony_ci     * @since 8
3809e1c44949Sopenharmony_ci     */
3810e1c44949Sopenharmony_ci    EVENT_INVALID_FDN_NUMBER,
3811e1c44949Sopenharmony_ci
3812e1c44949Sopenharmony_ci    /**
3813e1c44949Sopenharmony_ci     * Indicates hold call fail.
3814e1c44949Sopenharmony_ci     *
3815e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3816e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3817e1c44949Sopenharmony_ci     * @since 11
3818e1c44949Sopenharmony_ci     */
3819e1c44949Sopenharmony_ci    EVENT_HOLD_CALL_FAILED,
3820e1c44949Sopenharmony_ci
3821e1c44949Sopenharmony_ci    /**
3822e1c44949Sopenharmony_ci     * Indicates swap call fail.
3823e1c44949Sopenharmony_ci     *
3824e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3825e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3826e1c44949Sopenharmony_ci     * @since 11
3827e1c44949Sopenharmony_ci     */
3828e1c44949Sopenharmony_ci    EVENT_SWAP_CALL_FAILED,
3829e1c44949Sopenharmony_ci
3830e1c44949Sopenharmony_ci    /**
3831e1c44949Sopenharmony_ci     * Indicates combine call failed.
3832e1c44949Sopenharmony_ci     *
3833e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3834e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3835e1c44949Sopenharmony_ci     * @since 11
3836e1c44949Sopenharmony_ci     */
3837e1c44949Sopenharmony_ci    EVENT_COMBINE_CALL_FAILED,
3838e1c44949Sopenharmony_ci  
3839e1c44949Sopenharmony_ci    /**
3840e1c44949Sopenharmony_ci     * Indicates split call failed.
3841e1c44949Sopenharmony_ci     *
3842e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3843e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3844e1c44949Sopenharmony_ci     * @since 11
3845e1c44949Sopenharmony_ci     */
3846e1c44949Sopenharmony_ci    EVENT_SPLIT_CALL_FAILED,
3847e1c44949Sopenharmony_ci
3848e1c44949Sopenharmony_ci    /**
3849e1c44949Sopenharmony_ci     * Indicates show full screen.
3850e1c44949Sopenharmony_ci     *
3851e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3852e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3853e1c44949Sopenharmony_ci     * @since 12
3854e1c44949Sopenharmony_ci     */
3855e1c44949Sopenharmony_ci    EVENT_SHOW_FULL_SCREEN,
3856e1c44949Sopenharmony_ci
3857e1c44949Sopenharmony_ci    /**
3858e1c44949Sopenharmony_ci     * Indicates show float window.
3859e1c44949Sopenharmony_ci     *
3860e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3861e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3862e1c44949Sopenharmony_ci     * @since 12
3863e1c44949Sopenharmony_ci     */
3864e1c44949Sopenharmony_ci    EVENT_SHOW_FLOAT_WINDOW,
3865e1c44949Sopenharmony_ci  }
3866e1c44949Sopenharmony_ci
3867e1c44949Sopenharmony_ci  /**
3868e1c44949Sopenharmony_ci   * Indicates the states of call.
3869e1c44949Sopenharmony_ci   *
3870e1c44949Sopenharmony_ci   * @enum { number }
3871e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3872e1c44949Sopenharmony_ci   * @since 6
3873e1c44949Sopenharmony_ci   */
3874e1c44949Sopenharmony_ci  export enum CallState {
3875e1c44949Sopenharmony_ci    /**
3876e1c44949Sopenharmony_ci     * Indicates an invalid state, which is used when the call state fails to be obtained.
3877e1c44949Sopenharmony_ci     *
3878e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3879e1c44949Sopenharmony_ci     * @since 6
3880e1c44949Sopenharmony_ci     */
3881e1c44949Sopenharmony_ci    CALL_STATE_UNKNOWN = -1,
3882e1c44949Sopenharmony_ci
3883e1c44949Sopenharmony_ci    /**
3884e1c44949Sopenharmony_ci     * Indicates that there is no ongoing call.
3885e1c44949Sopenharmony_ci     *
3886e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3887e1c44949Sopenharmony_ci     * @since 6
3888e1c44949Sopenharmony_ci     */
3889e1c44949Sopenharmony_ci    CALL_STATE_IDLE = 0,
3890e1c44949Sopenharmony_ci
3891e1c44949Sopenharmony_ci    /**
3892e1c44949Sopenharmony_ci     * Indicates that an incoming call is ringing or waiting.
3893e1c44949Sopenharmony_ci     *
3894e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3895e1c44949Sopenharmony_ci     * @since 6
3896e1c44949Sopenharmony_ci     */
3897e1c44949Sopenharmony_ci    CALL_STATE_RINGING = 1,
3898e1c44949Sopenharmony_ci
3899e1c44949Sopenharmony_ci    /**
3900e1c44949Sopenharmony_ci     * Indicates that a least one call is in the dialing, active, or hold state, and there is no new
3901e1c44949Sopenharmony_ci     * incoming call ringing or waiting.
3902e1c44949Sopenharmony_ci     *
3903e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3904e1c44949Sopenharmony_ci     * @since 6
3905e1c44949Sopenharmony_ci     */
3906e1c44949Sopenharmony_ci    CALL_STATE_OFFHOOK = 2,
3907e1c44949Sopenharmony_ci
3908e1c44949Sopenharmony_ci    /**
3909e1c44949Sopenharmony_ci     * Indicates that call is answered
3910e1c44949Sopenharmony_ci     *
3911e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3912e1c44949Sopenharmony_ci     * @since 11
3913e1c44949Sopenharmony_ci     */
3914e1c44949Sopenharmony_ci    CALL_STATE_ANSWERED = 3
3915e1c44949Sopenharmony_ci  }
3916e1c44949Sopenharmony_ci
3917e1c44949Sopenharmony_ci  /**
3918e1c44949Sopenharmony_ci   * Indicates the options of placing a call.
3919e1c44949Sopenharmony_ci   *
3920e1c44949Sopenharmony_ci   * @interface DialOptions
3921e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3922e1c44949Sopenharmony_ci   * @since 6
3923e1c44949Sopenharmony_ci   */
3924e1c44949Sopenharmony_ci  export interface DialOptions {
3925e1c44949Sopenharmony_ci    /**
3926e1c44949Sopenharmony_ci     * Indicates whether the call to be made is a video call. The value {@code false} indicates
3927e1c44949Sopenharmony_ci     * a voice call.
3928e1c44949Sopenharmony_ci     *
3929e1c44949Sopenharmony_ci     * @type { ?boolean }
3930e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3931e1c44949Sopenharmony_ci     * @since 6
3932e1c44949Sopenharmony_ci     */
3933e1c44949Sopenharmony_ci    extras?: boolean;
3934e1c44949Sopenharmony_ci
3935e1c44949Sopenharmony_ci    /**
3936e1c44949Sopenharmony_ci     * Indicates the card slot index number, ranging from 0 to the maximum card slot index number
3937e1c44949Sopenharmony_ci     * supported by the device.
3938e1c44949Sopenharmony_ci     *
3939e1c44949Sopenharmony_ci     * @type { ?number }
3940e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3941e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3942e1c44949Sopenharmony_ci     * @since 8
3943e1c44949Sopenharmony_ci     */
3944e1c44949Sopenharmony_ci    accountId?: number;
3945e1c44949Sopenharmony_ci
3946e1c44949Sopenharmony_ci    /**
3947e1c44949Sopenharmony_ci     * Indicates the type of Video state.
3948e1c44949Sopenharmony_ci     *
3949e1c44949Sopenharmony_ci     * @type { ?VideoStateType }
3950e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3951e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3952e1c44949Sopenharmony_ci     * @since 8
3953e1c44949Sopenharmony_ci     */
3954e1c44949Sopenharmony_ci    videoState?: VideoStateType;
3955e1c44949Sopenharmony_ci
3956e1c44949Sopenharmony_ci    /**
3957e1c44949Sopenharmony_ci     * Indicates the scenario of the call to be made.
3958e1c44949Sopenharmony_ci     *
3959e1c44949Sopenharmony_ci     * @type { ?DialScene }
3960e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3961e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3962e1c44949Sopenharmony_ci     * @since 8
3963e1c44949Sopenharmony_ci     */
3964e1c44949Sopenharmony_ci    dialScene?: DialScene;
3965e1c44949Sopenharmony_ci
3966e1c44949Sopenharmony_ci    /**
3967e1c44949Sopenharmony_ci     * Indicates the type of the call to be made.
3968e1c44949Sopenharmony_ci     *
3969e1c44949Sopenharmony_ci     * @type { ?DialType }
3970e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3971e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3972e1c44949Sopenharmony_ci     * @since 8
3973e1c44949Sopenharmony_ci     */
3974e1c44949Sopenharmony_ci    dialType?: DialType;
3975e1c44949Sopenharmony_ci  }
3976e1c44949Sopenharmony_ci
3977e1c44949Sopenharmony_ci  /**
3978e1c44949Sopenharmony_ci   * Indicates the options for initiating a call.
3979e1c44949Sopenharmony_ci   *
3980e1c44949Sopenharmony_ci   * @interface DialCallOptions
3981e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
3982e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
3983e1c44949Sopenharmony_ci   * @since 9
3984e1c44949Sopenharmony_ci   */
3985e1c44949Sopenharmony_ci  export interface DialCallOptions {
3986e1c44949Sopenharmony_ci    /**
3987e1c44949Sopenharmony_ci     * Indicates the card slot index number, ranging from 0 to the maximum card slot index number
3988e1c44949Sopenharmony_ci     * supported by the device.
3989e1c44949Sopenharmony_ci     *
3990e1c44949Sopenharmony_ci     * @type { ?number }
3991e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
3992e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
3993e1c44949Sopenharmony_ci     * @since 9
3994e1c44949Sopenharmony_ci     */
3995e1c44949Sopenharmony_ci    accountId?: number;
3996e1c44949Sopenharmony_ci    /**
3997e1c44949Sopenharmony_ci     * Indicates the type of Video state.
3998e1c44949Sopenharmony_ci     *
3999e1c44949Sopenharmony_ci     * @type { ?VideoStateType }
4000e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4001e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4002e1c44949Sopenharmony_ci     * @since 9
4003e1c44949Sopenharmony_ci     */
4004e1c44949Sopenharmony_ci    videoState?: VideoStateType;
4005e1c44949Sopenharmony_ci    /**
4006e1c44949Sopenharmony_ci     * Indicates the scenario of the call.
4007e1c44949Sopenharmony_ci     *
4008e1c44949Sopenharmony_ci     * @type { ?DialScene }
4009e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4010e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4011e1c44949Sopenharmony_ci     * @since 9
4012e1c44949Sopenharmony_ci     */
4013e1c44949Sopenharmony_ci    dialScene?: DialScene;
4014e1c44949Sopenharmony_ci    /**
4015e1c44949Sopenharmony_ci     * Indicates the type of the call.
4016e1c44949Sopenharmony_ci     *
4017e1c44949Sopenharmony_ci     * @type { ?DialType }
4018e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4019e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4020e1c44949Sopenharmony_ci     * @since 9
4021e1c44949Sopenharmony_ci     */
4022e1c44949Sopenharmony_ci    dialType?: DialType;
4023e1c44949Sopenharmony_ci  }
4024e1c44949Sopenharmony_ci
4025e1c44949Sopenharmony_ci  /**
4026e1c44949Sopenharmony_ci   * Indicates the scenarios of the call to be made.
4027e1c44949Sopenharmony_ci   *
4028e1c44949Sopenharmony_ci   * @enum { number }
4029e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
4030e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
4031e1c44949Sopenharmony_ci   * @since 8
4032e1c44949Sopenharmony_ci   */
4033e1c44949Sopenharmony_ci  export enum DialScene {
4034e1c44949Sopenharmony_ci    /**
4035e1c44949Sopenharmony_ci     * Indicates this is a common call.
4036e1c44949Sopenharmony_ci     *
4037e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4038e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4039e1c44949Sopenharmony_ci     * @since 8
4040e1c44949Sopenharmony_ci     */
4041e1c44949Sopenharmony_ci    CALL_NORMAL = 0,
4042e1c44949Sopenharmony_ci
4043e1c44949Sopenharmony_ci    /**
4044e1c44949Sopenharmony_ci     * Indicates this is a privileged call.
4045e1c44949Sopenharmony_ci     *
4046e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4047e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4048e1c44949Sopenharmony_ci     * @since 8
4049e1c44949Sopenharmony_ci     */
4050e1c44949Sopenharmony_ci    CALL_PRIVILEGED = 1,
4051e1c44949Sopenharmony_ci
4052e1c44949Sopenharmony_ci    /**
4053e1c44949Sopenharmony_ci     * Indicates this is an emergency call.
4054e1c44949Sopenharmony_ci     *
4055e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4056e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4057e1c44949Sopenharmony_ci     * @since 8
4058e1c44949Sopenharmony_ci     */
4059e1c44949Sopenharmony_ci    CALL_EMERGENCY = 2,
4060e1c44949Sopenharmony_ci  }
4061e1c44949Sopenharmony_ci
4062e1c44949Sopenharmony_ci  /**
4063e1c44949Sopenharmony_ci   * Indicates the types of the call to be made.
4064e1c44949Sopenharmony_ci   *
4065e1c44949Sopenharmony_ci   * @enum { number }
4066e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
4067e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
4068e1c44949Sopenharmony_ci   * @since 8
4069e1c44949Sopenharmony_ci   */
4070e1c44949Sopenharmony_ci  export enum DialType {
4071e1c44949Sopenharmony_ci    /**
4072e1c44949Sopenharmony_ci     * Indicates this is a carrier call.
4073e1c44949Sopenharmony_ci     *
4074e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4075e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4076e1c44949Sopenharmony_ci     * @since 8
4077e1c44949Sopenharmony_ci     */
4078e1c44949Sopenharmony_ci    DIAL_CARRIER_TYPE = 0,
4079e1c44949Sopenharmony_ci
4080e1c44949Sopenharmony_ci    /**
4081e1c44949Sopenharmony_ci     * Indicates this is a call to play voice mail.
4082e1c44949Sopenharmony_ci     *
4083e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4084e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4085e1c44949Sopenharmony_ci     * @since 8
4086e1c44949Sopenharmony_ci     */
4087e1c44949Sopenharmony_ci    DIAL_VOICE_MAIL_TYPE = 1,
4088e1c44949Sopenharmony_ci
4089e1c44949Sopenharmony_ci    /**
4090e1c44949Sopenharmony_ci     * Indicates this is an OTT call.
4091e1c44949Sopenharmony_ci     *
4092e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4093e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4094e1c44949Sopenharmony_ci     * @since 8
4095e1c44949Sopenharmony_ci     */
4096e1c44949Sopenharmony_ci    DIAL_OTT_TYPE = 2,
4097e1c44949Sopenharmony_ci  }
4098e1c44949Sopenharmony_ci
4099e1c44949Sopenharmony_ci  /**
4100e1c44949Sopenharmony_ci   * Indicates the options for call rejection message.
4101e1c44949Sopenharmony_ci   *
4102e1c44949Sopenharmony_ci   * @interface RejectMessageOptions
4103e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
4104e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
4105e1c44949Sopenharmony_ci   * @since 7
4106e1c44949Sopenharmony_ci   */
4107e1c44949Sopenharmony_ci  export interface RejectMessageOptions {
4108e1c44949Sopenharmony_ci    /**
4109e1c44949Sopenharmony_ci     * Indicates the content of call rejection message.
4110e1c44949Sopenharmony_ci     *
4111e1c44949Sopenharmony_ci     * @type { string }
4112e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4113e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4114e1c44949Sopenharmony_ci     * @since 7
4115e1c44949Sopenharmony_ci     */
4116e1c44949Sopenharmony_ci    messageContent: string;
4117e1c44949Sopenharmony_ci  }
4118e1c44949Sopenharmony_ci
4119e1c44949Sopenharmony_ci  /**
4120e1c44949Sopenharmony_ci   * Indicates the result of call transfer.
4121e1c44949Sopenharmony_ci   *
4122e1c44949Sopenharmony_ci   * @interface CallTransferResult
4123e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
4124e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
4125e1c44949Sopenharmony_ci   * @since 8
4126e1c44949Sopenharmony_ci   */
4127e1c44949Sopenharmony_ci  export interface CallTransferResult {
4128e1c44949Sopenharmony_ci    /**
4129e1c44949Sopenharmony_ci     * Indicates the status of call forwarding.
4130e1c44949Sopenharmony_ci     *
4131e1c44949Sopenharmony_ci     * @type { TransferStatus }
4132e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4133e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4134e1c44949Sopenharmony_ci     * @since 8
4135e1c44949Sopenharmony_ci     */
4136e1c44949Sopenharmony_ci    status: TransferStatus;
4137e1c44949Sopenharmony_ci
4138e1c44949Sopenharmony_ci    /**
4139e1c44949Sopenharmony_ci     * Indicates the phone number of call forwarding.
4140e1c44949Sopenharmony_ci     *
4141e1c44949Sopenharmony_ci     * @type { string }
4142e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4143e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4144e1c44949Sopenharmony_ci     * @since 8
4145e1c44949Sopenharmony_ci     */
4146e1c44949Sopenharmony_ci    number: string;
4147e1c44949Sopenharmony_ci
4148e1c44949Sopenharmony_ci    /**
4149e1c44949Sopenharmony_ci     * Indicates the start time hours of call forwarding.
4150e1c44949Sopenharmony_ci     *
4151e1c44949Sopenharmony_ci     * @type { number }
4152e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4153e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4154e1c44949Sopenharmony_ci     * @since 9
4155e1c44949Sopenharmony_ci     */
4156e1c44949Sopenharmony_ci    startHour: number;
4157e1c44949Sopenharmony_ci
4158e1c44949Sopenharmony_ci    /**
4159e1c44949Sopenharmony_ci     * Indicates the start time minutes of call forwarding.
4160e1c44949Sopenharmony_ci     *
4161e1c44949Sopenharmony_ci     * @type { number }
4162e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4163e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4164e1c44949Sopenharmony_ci     * @since 9
4165e1c44949Sopenharmony_ci     */
4166e1c44949Sopenharmony_ci    startMinute: number;
4167e1c44949Sopenharmony_ci
4168e1c44949Sopenharmony_ci    /**
4169e1c44949Sopenharmony_ci     * Indicates the end time hours of call forwarding.
4170e1c44949Sopenharmony_ci     *
4171e1c44949Sopenharmony_ci     * @type { number }
4172e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4173e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4174e1c44949Sopenharmony_ci     * @since 9
4175e1c44949Sopenharmony_ci     */
4176e1c44949Sopenharmony_ci    endHour: number;
4177e1c44949Sopenharmony_ci
4178e1c44949Sopenharmony_ci    /**
4179e1c44949Sopenharmony_ci     * Indicates the end time minutes of call forwarding.
4180e1c44949Sopenharmony_ci     *
4181e1c44949Sopenharmony_ci     * @type { number }
4182e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4183e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4184e1c44949Sopenharmony_ci     * @since 9
4185e1c44949Sopenharmony_ci     */
4186e1c44949Sopenharmony_ci    endMinute: number;
4187e1c44949Sopenharmony_ci  }
4188e1c44949Sopenharmony_ci
4189e1c44949Sopenharmony_ci  /**
4190e1c44949Sopenharmony_ci   * Indicates the status of call waiting.
4191e1c44949Sopenharmony_ci   *
4192e1c44949Sopenharmony_ci   * @enum { number }
4193e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
4194e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
4195e1c44949Sopenharmony_ci   * @since 7
4196e1c44949Sopenharmony_ci   */
4197e1c44949Sopenharmony_ci  export enum CallWaitingStatus {
4198e1c44949Sopenharmony_ci    /**
4199e1c44949Sopenharmony_ci     * Indicates that call waiting is not enabled.
4200e1c44949Sopenharmony_ci     *
4201e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4202e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4203e1c44949Sopenharmony_ci     * @since 7
4204e1c44949Sopenharmony_ci     */
4205e1c44949Sopenharmony_ci    CALL_WAITING_DISABLE = 0,
4206e1c44949Sopenharmony_ci
4207e1c44949Sopenharmony_ci    /**
4208e1c44949Sopenharmony_ci     * Indicates that call waiting is enabled.
4209e1c44949Sopenharmony_ci     *
4210e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4211e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4212e1c44949Sopenharmony_ci     * @since 7
4213e1c44949Sopenharmony_ci     */
4214e1c44949Sopenharmony_ci    CALL_WAITING_ENABLE = 1
4215e1c44949Sopenharmony_ci  }
4216e1c44949Sopenharmony_ci
4217e1c44949Sopenharmony_ci  /**
4218e1c44949Sopenharmony_ci   * Indicates the status of call restriction.
4219e1c44949Sopenharmony_ci   *
4220e1c44949Sopenharmony_ci   * @enum { number }
4221e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
4222e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
4223e1c44949Sopenharmony_ci   * @since 8
4224e1c44949Sopenharmony_ci   */
4225e1c44949Sopenharmony_ci  export enum RestrictionStatus {
4226e1c44949Sopenharmony_ci    /**
4227e1c44949Sopenharmony_ci     * Indicates that call barring is not enabled.
4228e1c44949Sopenharmony_ci     *
4229e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4230e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4231e1c44949Sopenharmony_ci     * @since 8
4232e1c44949Sopenharmony_ci     */
4233e1c44949Sopenharmony_ci    RESTRICTION_DISABLE = 0,
4234e1c44949Sopenharmony_ci
4235e1c44949Sopenharmony_ci    /**
4236e1c44949Sopenharmony_ci     * Indicates that call barring is enabled.
4237e1c44949Sopenharmony_ci     *
4238e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4239e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4240e1c44949Sopenharmony_ci     * @since 8
4241e1c44949Sopenharmony_ci     */
4242e1c44949Sopenharmony_ci    RESTRICTION_ENABLE = 1
4243e1c44949Sopenharmony_ci  }
4244e1c44949Sopenharmony_ci
4245e1c44949Sopenharmony_ci  /**
4246e1c44949Sopenharmony_ci   * Indicates the status of call transfer.
4247e1c44949Sopenharmony_ci   *
4248e1c44949Sopenharmony_ci   * @enum { number }
4249e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
4250e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
4251e1c44949Sopenharmony_ci   * @since 8
4252e1c44949Sopenharmony_ci   */
4253e1c44949Sopenharmony_ci  export enum TransferStatus {
4254e1c44949Sopenharmony_ci    /**
4255e1c44949Sopenharmony_ci     * Indicates that call forwarding is not enabled.
4256e1c44949Sopenharmony_ci     *
4257e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4258e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4259e1c44949Sopenharmony_ci     * @since 8
4260e1c44949Sopenharmony_ci     */
4261e1c44949Sopenharmony_ci    TRANSFER_DISABLE = 0,
4262e1c44949Sopenharmony_ci
4263e1c44949Sopenharmony_ci    /**
4264e1c44949Sopenharmony_ci     * Indicates that call forwarding is enabled.
4265e1c44949Sopenharmony_ci     *
4266e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4267e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4268e1c44949Sopenharmony_ci     * @since 8
4269e1c44949Sopenharmony_ci     */
4270e1c44949Sopenharmony_ci    TRANSFER_ENABLE = 1
4271e1c44949Sopenharmony_ci  }
4272e1c44949Sopenharmony_ci
4273e1c44949Sopenharmony_ci  /**
4274e1c44949Sopenharmony_ci   * Indicates the option for determining if a number is an emergency number for specified slot.
4275e1c44949Sopenharmony_ci   *
4276e1c44949Sopenharmony_ci   * @interface EmergencyNumberOptions
4277e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
4278e1c44949Sopenharmony_ci   * @since 7
4279e1c44949Sopenharmony_ci   */
4280e1c44949Sopenharmony_ci  export interface EmergencyNumberOptions {
4281e1c44949Sopenharmony_ci    /**
4282e1c44949Sopenharmony_ci     * Indicates the card slot index number, ranging from 0 to the
4283e1c44949Sopenharmony_ci     * maximum card slot index number supported by the device.
4284e1c44949Sopenharmony_ci     *
4285e1c44949Sopenharmony_ci     * @type { ?number }
4286e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4287e1c44949Sopenharmony_ci     * @since 7
4288e1c44949Sopenharmony_ci     */
4289e1c44949Sopenharmony_ci    slotId?: number;
4290e1c44949Sopenharmony_ci  }
4291e1c44949Sopenharmony_ci
4292e1c44949Sopenharmony_ci  /**
4293e1c44949Sopenharmony_ci   * Indicates the option for number formatting.
4294e1c44949Sopenharmony_ci   *
4295e1c44949Sopenharmony_ci   * @interface NumberFormatOptions
4296e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
4297e1c44949Sopenharmony_ci   * @since 7
4298e1c44949Sopenharmony_ci   */
4299e1c44949Sopenharmony_ci  export interface NumberFormatOptions {
4300e1c44949Sopenharmony_ci    /**
4301e1c44949Sopenharmony_ci     * Indicates the country code.
4302e1c44949Sopenharmony_ci     *
4303e1c44949Sopenharmony_ci     * @type { ?string }
4304e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4305e1c44949Sopenharmony_ci     * @since 7
4306e1c44949Sopenharmony_ci     */
4307e1c44949Sopenharmony_ci    countryCode?: string;
4308e1c44949Sopenharmony_ci  }
4309e1c44949Sopenharmony_ci
4310e1c44949Sopenharmony_ci  /**
4311e1c44949Sopenharmony_ci   * Indicates the MMI code result.
4312e1c44949Sopenharmony_ci   *
4313e1c44949Sopenharmony_ci   * @interface MmiCodeResults
4314e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
4315e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
4316e1c44949Sopenharmony_ci   * @since 9
4317e1c44949Sopenharmony_ci   */
4318e1c44949Sopenharmony_ci  export interface MmiCodeResults {
4319e1c44949Sopenharmony_ci    /**
4320e1c44949Sopenharmony_ci     * Indicates the result of MMI code.
4321e1c44949Sopenharmony_ci     *
4322e1c44949Sopenharmony_ci     * @type { MmiCodeResult }
4323e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4324e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4325e1c44949Sopenharmony_ci     * @since 9
4326e1c44949Sopenharmony_ci     */
4327e1c44949Sopenharmony_ci    result: MmiCodeResult;
4328e1c44949Sopenharmony_ci
4329e1c44949Sopenharmony_ci    /**
4330e1c44949Sopenharmony_ci     * Indicates the message of MMI code.
4331e1c44949Sopenharmony_ci     *
4332e1c44949Sopenharmony_ci     * @type { string }
4333e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4334e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4335e1c44949Sopenharmony_ci     * @since 9
4336e1c44949Sopenharmony_ci     */
4337e1c44949Sopenharmony_ci    message: string;
4338e1c44949Sopenharmony_ci  }
4339e1c44949Sopenharmony_ci
4340e1c44949Sopenharmony_ci  /**
4341e1c44949Sopenharmony_ci   * Indicates the MMI code result.
4342e1c44949Sopenharmony_ci   *
4343e1c44949Sopenharmony_ci   * @enum { number }
4344e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
4345e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
4346e1c44949Sopenharmony_ci   * @since 9
4347e1c44949Sopenharmony_ci   */
4348e1c44949Sopenharmony_ci  export enum MmiCodeResult {
4349e1c44949Sopenharmony_ci    /**
4350e1c44949Sopenharmony_ci     * Indicates the result of MMI code with successfully.
4351e1c44949Sopenharmony_ci     *
4352e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4353e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4354e1c44949Sopenharmony_ci     * @since 9
4355e1c44949Sopenharmony_ci     */
4356e1c44949Sopenharmony_ci    MMI_CODE_SUCCESS = 0,
4357e1c44949Sopenharmony_ci
4358e1c44949Sopenharmony_ci    /**
4359e1c44949Sopenharmony_ci     * Indicates the result of MMI code with failed.
4360e1c44949Sopenharmony_ci     *
4361e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4362e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4363e1c44949Sopenharmony_ci     * @since 9
4364e1c44949Sopenharmony_ci     */
4365e1c44949Sopenharmony_ci    MMI_CODE_FAILED = 1
4366e1c44949Sopenharmony_ci  }
4367e1c44949Sopenharmony_ci
4368e1c44949Sopenharmony_ci  /**
4369e1c44949Sopenharmony_ci   * Indicates the causes of call disconnection.
4370e1c44949Sopenharmony_ci   *
4371e1c44949Sopenharmony_ci   * @enum { number }
4372e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
4373e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
4374e1c44949Sopenharmony_ci   * @since 8
4375e1c44949Sopenharmony_ci   */
4376e1c44949Sopenharmony_ci  export enum DisconnectedReason {
4377e1c44949Sopenharmony_ci    /**
4378e1c44949Sopenharmony_ci     * Indicates the call disconnect due to unassigned number.
4379e1c44949Sopenharmony_ci     *
4380e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4381e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4382e1c44949Sopenharmony_ci     * @since 8
4383e1c44949Sopenharmony_ci     */
4384e1c44949Sopenharmony_ci    UNASSIGNED_NUMBER = 1,
4385e1c44949Sopenharmony_ci
4386e1c44949Sopenharmony_ci    /**
4387e1c44949Sopenharmony_ci     * Indicates the call disconnect due to no route to destination.
4388e1c44949Sopenharmony_ci     *
4389e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4390e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4391e1c44949Sopenharmony_ci     * @since 8
4392e1c44949Sopenharmony_ci     */
4393e1c44949Sopenharmony_ci    NO_ROUTE_TO_DESTINATION = 3,
4394e1c44949Sopenharmony_ci
4395e1c44949Sopenharmony_ci    /**
4396e1c44949Sopenharmony_ci     * Indicates the call disconnect due to channel unacceptable.
4397e1c44949Sopenharmony_ci     *
4398e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4399e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4400e1c44949Sopenharmony_ci     * @since 8
4401e1c44949Sopenharmony_ci     */
4402e1c44949Sopenharmony_ci    CHANNEL_UNACCEPTABLE = 6,
4403e1c44949Sopenharmony_ci
4404e1c44949Sopenharmony_ci    /**
4405e1c44949Sopenharmony_ci     * Indicates the call disconnect due to operator determined barring.
4406e1c44949Sopenharmony_ci     *
4407e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4408e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4409e1c44949Sopenharmony_ci     * @since 8
4410e1c44949Sopenharmony_ci     */
4411e1c44949Sopenharmony_ci    OPERATOR_DETERMINED_BARRING = 8,
4412e1c44949Sopenharmony_ci
4413e1c44949Sopenharmony_ci    /**
4414e1c44949Sopenharmony_ci     * Indicates the call disconnect due to call completed elsewhere.
4415e1c44949Sopenharmony_ci     *
4416e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4417e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4418e1c44949Sopenharmony_ci     * @since 9
4419e1c44949Sopenharmony_ci     */
4420e1c44949Sopenharmony_ci    CALL_COMPLETED_ELSEWHERE = 13,
4421e1c44949Sopenharmony_ci
4422e1c44949Sopenharmony_ci    /**
4423e1c44949Sopenharmony_ci     * Indicates the call disconnect due to normal call clearing.
4424e1c44949Sopenharmony_ci     *
4425e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4426e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4427e1c44949Sopenharmony_ci     * @since 8
4428e1c44949Sopenharmony_ci     */
4429e1c44949Sopenharmony_ci    NORMAL_CALL_CLEARING = 16,
4430e1c44949Sopenharmony_ci
4431e1c44949Sopenharmony_ci    /**
4432e1c44949Sopenharmony_ci     * Indicates the call disconnect due to user busy.
4433e1c44949Sopenharmony_ci     *
4434e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4435e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4436e1c44949Sopenharmony_ci     * @since 8
4437e1c44949Sopenharmony_ci     */
4438e1c44949Sopenharmony_ci    USER_BUSY = 17,
4439e1c44949Sopenharmony_ci
4440e1c44949Sopenharmony_ci    /**
4441e1c44949Sopenharmony_ci     * Indicates the call disconnect due to no user responding.
4442e1c44949Sopenharmony_ci     *
4443e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4444e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4445e1c44949Sopenharmony_ci     * @since 8
4446e1c44949Sopenharmony_ci     */
4447e1c44949Sopenharmony_ci    NO_USER_RESPONDING = 18,
4448e1c44949Sopenharmony_ci
4449e1c44949Sopenharmony_ci    /**
4450e1c44949Sopenharmony_ci     * Indicates the call disconnect due to user alerting, no answer.
4451e1c44949Sopenharmony_ci     *
4452e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4453e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4454e1c44949Sopenharmony_ci     * @since 8
4455e1c44949Sopenharmony_ci     */
4456e1c44949Sopenharmony_ci    USER_ALERTING_NO_ANSWER = 19,
4457e1c44949Sopenharmony_ci
4458e1c44949Sopenharmony_ci    /**
4459e1c44949Sopenharmony_ci     * Indicates the call disconnect due to call rejected.
4460e1c44949Sopenharmony_ci     *
4461e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4462e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4463e1c44949Sopenharmony_ci     * @since 8
4464e1c44949Sopenharmony_ci     */
4465e1c44949Sopenharmony_ci    CALL_REJECTED = 21,
4466e1c44949Sopenharmony_ci
4467e1c44949Sopenharmony_ci    /**
4468e1c44949Sopenharmony_ci     * Indicates the call disconnect due to number changed.
4469e1c44949Sopenharmony_ci     *
4470e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4471e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4472e1c44949Sopenharmony_ci     * @since 8
4473e1c44949Sopenharmony_ci     */
4474e1c44949Sopenharmony_ci    NUMBER_CHANGED = 22,
4475e1c44949Sopenharmony_ci
4476e1c44949Sopenharmony_ci    /**
4477e1c44949Sopenharmony_ci     * Indicates the call rejected due to feature at the destination.
4478e1c44949Sopenharmony_ci     *
4479e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4480e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4481e1c44949Sopenharmony_ci     * @since 9
4482e1c44949Sopenharmony_ci     */
4483e1c44949Sopenharmony_ci    CALL_REJECTED_DUE_TO_FEATURE_AT_THE_DESTINATION = 24,
4484e1c44949Sopenharmony_ci
4485e1c44949Sopenharmony_ci    /**
4486e1c44949Sopenharmony_ci     * Indicates the call disconnect due to pre-emption.
4487e1c44949Sopenharmony_ci     *
4488e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4489e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4490e1c44949Sopenharmony_ci     * @since 9
4491e1c44949Sopenharmony_ci     */
4492e1c44949Sopenharmony_ci    FAILED_PRE_EMPTION = 25,
4493e1c44949Sopenharmony_ci
4494e1c44949Sopenharmony_ci    /**
4495e1c44949Sopenharmony_ci     * Indicates the call disconnect due to non selected user clearing.
4496e1c44949Sopenharmony_ci     *
4497e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4498e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4499e1c44949Sopenharmony_ci     * @since 9
4500e1c44949Sopenharmony_ci     */
4501e1c44949Sopenharmony_ci    NON_SELECTED_USER_CLEARING = 26,
4502e1c44949Sopenharmony_ci
4503e1c44949Sopenharmony_ci    /**
4504e1c44949Sopenharmony_ci     * Indicates the call disconnect due to destination out of order.
4505e1c44949Sopenharmony_ci     *
4506e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4507e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4508e1c44949Sopenharmony_ci     * @since 8
4509e1c44949Sopenharmony_ci     */
4510e1c44949Sopenharmony_ci    DESTINATION_OUT_OF_ORDER = 27,
4511e1c44949Sopenharmony_ci
4512e1c44949Sopenharmony_ci    /**
4513e1c44949Sopenharmony_ci     * Indicates the call disconnect due to invalid number format.
4514e1c44949Sopenharmony_ci     *
4515e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4516e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4517e1c44949Sopenharmony_ci     * @since 8
4518e1c44949Sopenharmony_ci     */
4519e1c44949Sopenharmony_ci    INVALID_NUMBER_FORMAT = 28,
4520e1c44949Sopenharmony_ci
4521e1c44949Sopenharmony_ci    /**
4522e1c44949Sopenharmony_ci     * Indicates the call disconnect due to facility rejected.
4523e1c44949Sopenharmony_ci     *
4524e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4525e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4526e1c44949Sopenharmony_ci     * @since 9
4527e1c44949Sopenharmony_ci     */
4528e1c44949Sopenharmony_ci    FACILITY_REJECTED = 29,
4529e1c44949Sopenharmony_ci
4530e1c44949Sopenharmony_ci    /**
4531e1c44949Sopenharmony_ci     * Indicates the call disconnect due to response to status enquiry.
4532e1c44949Sopenharmony_ci     *
4533e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4534e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4535e1c44949Sopenharmony_ci     * @since 9
4536e1c44949Sopenharmony_ci     */
4537e1c44949Sopenharmony_ci    RESPONSE_TO_STATUS_ENQUIRY = 30,
4538e1c44949Sopenharmony_ci
4539e1c44949Sopenharmony_ci    /**
4540e1c44949Sopenharmony_ci     * Indicates the call disconnected normally, no specified cause.
4541e1c44949Sopenharmony_ci     *
4542e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4543e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4544e1c44949Sopenharmony_ci     * @since 9
4545e1c44949Sopenharmony_ci     */
4546e1c44949Sopenharmony_ci    NORMAL_UNSPECIFIED = 31,
4547e1c44949Sopenharmony_ci
4548e1c44949Sopenharmony_ci    /**
4549e1c44949Sopenharmony_ci     * Indicates the call disconnect due to no circuit/channel available.
4550e1c44949Sopenharmony_ci     *
4551e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4552e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4553e1c44949Sopenharmony_ci     * @since 9
4554e1c44949Sopenharmony_ci     */
4555e1c44949Sopenharmony_ci    NO_CIRCUIT_CHANNEL_AVAILABLE = 34,
4556e1c44949Sopenharmony_ci
4557e1c44949Sopenharmony_ci    /**
4558e1c44949Sopenharmony_ci     * Indicates the call disconnect due to network out of order.
4559e1c44949Sopenharmony_ci     *
4560e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4561e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4562e1c44949Sopenharmony_ci     * @since 8
4563e1c44949Sopenharmony_ci     */
4564e1c44949Sopenharmony_ci    NETWORK_OUT_OF_ORDER = 38,
4565e1c44949Sopenharmony_ci
4566e1c44949Sopenharmony_ci    /**
4567e1c44949Sopenharmony_ci     * Indicates the call disconnect due to temporary failure.
4568e1c44949Sopenharmony_ci     *
4569e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4570e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4571e1c44949Sopenharmony_ci     * @since 8
4572e1c44949Sopenharmony_ci     */
4573e1c44949Sopenharmony_ci    TEMPORARY_FAILURE = 41,
4574e1c44949Sopenharmony_ci
4575e1c44949Sopenharmony_ci    /**
4576e1c44949Sopenharmony_ci     * Indicates the call disconnect due to switching equipment congestion.
4577e1c44949Sopenharmony_ci     *
4578e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4579e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4580e1c44949Sopenharmony_ci     * @since 9
4581e1c44949Sopenharmony_ci     */
4582e1c44949Sopenharmony_ci    SWITCHING_EQUIPMENT_CONGESTION = 42,
4583e1c44949Sopenharmony_ci
4584e1c44949Sopenharmony_ci    /**
4585e1c44949Sopenharmony_ci     * Indicates the call disconnect due to access information discarded.
4586e1c44949Sopenharmony_ci     *
4587e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4588e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4589e1c44949Sopenharmony_ci     * @since 9
4590e1c44949Sopenharmony_ci     */
4591e1c44949Sopenharmony_ci    ACCESS_INFORMATION_DISCARDED = 43,
4592e1c44949Sopenharmony_ci
4593e1c44949Sopenharmony_ci    /**
4594e1c44949Sopenharmony_ci     * Indicates the call disconnect due to requested circuit/channel not available.
4595e1c44949Sopenharmony_ci     *
4596e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4597e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4598e1c44949Sopenharmony_ci     * @since 9
4599e1c44949Sopenharmony_ci     */
4600e1c44949Sopenharmony_ci    REQUEST_CIRCUIT_CHANNEL_NOT_AVAILABLE = 44,
4601e1c44949Sopenharmony_ci
4602e1c44949Sopenharmony_ci    /**
4603e1c44949Sopenharmony_ci     * Indicates the call disconnect due to resources unavailable unspecified.
4604e1c44949Sopenharmony_ci     *
4605e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4606e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4607e1c44949Sopenharmony_ci     * @since 9
4608e1c44949Sopenharmony_ci     */
4609e1c44949Sopenharmony_ci    RESOURCES_UNAVAILABLE_UNSPECIFIED = 47,
4610e1c44949Sopenharmony_ci
4611e1c44949Sopenharmony_ci    /**
4612e1c44949Sopenharmony_ci     * Indicates the call disconnect due to quality of service unavailable.
4613e1c44949Sopenharmony_ci     *
4614e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4615e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4616e1c44949Sopenharmony_ci     * @since 9
4617e1c44949Sopenharmony_ci     */
4618e1c44949Sopenharmony_ci    QUALITY_OF_SERVICE_UNAVAILABLE = 49,
4619e1c44949Sopenharmony_ci
4620e1c44949Sopenharmony_ci    /**
4621e1c44949Sopenharmony_ci     * Indicates the call disconnect due to requested facility not subscribed.
4622e1c44949Sopenharmony_ci     *
4623e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4624e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4625e1c44949Sopenharmony_ci     * @since 9
4626e1c44949Sopenharmony_ci     */
4627e1c44949Sopenharmony_ci    REQUESTED_FACILITY_NOT_SUBSCRIBED = 50,
4628e1c44949Sopenharmony_ci
4629e1c44949Sopenharmony_ci    /**
4630e1c44949Sopenharmony_ci     * Indicates the call disconnect due to incoming calls barred within the CUG.
4631e1c44949Sopenharmony_ci     *
4632e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4633e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4634e1c44949Sopenharmony_ci     * @since 9
4635e1c44949Sopenharmony_ci     */
4636e1c44949Sopenharmony_ci    INCOMING_CALLS_BARRED_WITHIN_THE_CUG = 55,
4637e1c44949Sopenharmony_ci
4638e1c44949Sopenharmony_ci    /**
4639e1c44949Sopenharmony_ci     * Indicates the call disconnect due to bearer capability not authorized.
4640e1c44949Sopenharmony_ci     *
4641e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4642e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4643e1c44949Sopenharmony_ci     * @since 9
4644e1c44949Sopenharmony_ci     */
4645e1c44949Sopenharmony_ci    BEARER_CAPABILITY_NOT_AUTHORIZED = 57,
4646e1c44949Sopenharmony_ci
4647e1c44949Sopenharmony_ci    /**
4648e1c44949Sopenharmony_ci     * Indicates the call disconnect due to bearer capability not presently available.
4649e1c44949Sopenharmony_ci     *
4650e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4651e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4652e1c44949Sopenharmony_ci     * @since 9
4653e1c44949Sopenharmony_ci     */
4654e1c44949Sopenharmony_ci    BEARER_CAPABILITY_NOT_PRESENTLY_AVAILABLE = 58,
4655e1c44949Sopenharmony_ci
4656e1c44949Sopenharmony_ci    /**
4657e1c44949Sopenharmony_ci     * Indicates the call disconnect due to service or option not available, unspecified.
4658e1c44949Sopenharmony_ci     *
4659e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4660e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4661e1c44949Sopenharmony_ci     * @since 9
4662e1c44949Sopenharmony_ci     */
4663e1c44949Sopenharmony_ci    SERVICE_OR_OPTION_NOT_AVAILABLE_UNSPECIFIED = 63,
4664e1c44949Sopenharmony_ci
4665e1c44949Sopenharmony_ci    /**
4666e1c44949Sopenharmony_ci     * Indicates the call disconnect due to bearer service not implemented.
4667e1c44949Sopenharmony_ci     *
4668e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4669e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4670e1c44949Sopenharmony_ci     * @since 9
4671e1c44949Sopenharmony_ci     */
4672e1c44949Sopenharmony_ci    BEARER_SERVICE_NOT_IMPLEMENTED = 65,
4673e1c44949Sopenharmony_ci
4674e1c44949Sopenharmony_ci    /**
4675e1c44949Sopenharmony_ci     * Indicates the call disconnect due to ACM equal to or greater than the maximum value.
4676e1c44949Sopenharmony_ci     *
4677e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4678e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4679e1c44949Sopenharmony_ci     * @since 9
4680e1c44949Sopenharmony_ci     */
4681e1c44949Sopenharmony_ci    ACM_EQUALTO_OR_GREATER_THAN_THE_MAXIMUM_VALUE = 68,
4682e1c44949Sopenharmony_ci
4683e1c44949Sopenharmony_ci    /**
4684e1c44949Sopenharmony_ci     * Indicates the call disconnect due to requested facility not implemented.
4685e1c44949Sopenharmony_ci     *
4686e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4687e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4688e1c44949Sopenharmony_ci     * @since 9
4689e1c44949Sopenharmony_ci     */
4690e1c44949Sopenharmony_ci    REQUESTED_FACILITY_NOT_IMPLEMENTED = 69,
4691e1c44949Sopenharmony_ci
4692e1c44949Sopenharmony_ci    /**
4693e1c44949Sopenharmony_ci     * Indicates the call disconnect due to only restricted digital info BC available.
4694e1c44949Sopenharmony_ci     *
4695e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4696e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4697e1c44949Sopenharmony_ci     * @since 9
4698e1c44949Sopenharmony_ci     */
4699e1c44949Sopenharmony_ci    ONLY_RESTRICTED_DIGITAL_INFO_BEARER_CAPABILITY_IS_AVAILABLE = 70,
4700e1c44949Sopenharmony_ci
4701e1c44949Sopenharmony_ci    /**
4702e1c44949Sopenharmony_ci     * Indicates the call disconnect due to service or option not implemented, unspecified.
4703e1c44949Sopenharmony_ci     *
4704e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4705e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4706e1c44949Sopenharmony_ci     * @since 9
4707e1c44949Sopenharmony_ci     */
4708e1c44949Sopenharmony_ci    SERVICE_OR_OPTION_NOT_IMPLEMENTED_UNSPECIFIED = 79,
4709e1c44949Sopenharmony_ci
4710e1c44949Sopenharmony_ci    /**
4711e1c44949Sopenharmony_ci     * Indicates the call disconnect due to invalid transaction identifier value.
4712e1c44949Sopenharmony_ci     *
4713e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4714e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4715e1c44949Sopenharmony_ci     * @since 9
4716e1c44949Sopenharmony_ci     */
4717e1c44949Sopenharmony_ci    INVALID_TRANSACTION_IDENTIFIER_VALUE = 81,
4718e1c44949Sopenharmony_ci
4719e1c44949Sopenharmony_ci    /**
4720e1c44949Sopenharmony_ci     * Indicates the call disconnect due to user not member of CUG.
4721e1c44949Sopenharmony_ci     *
4722e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4723e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4724e1c44949Sopenharmony_ci     * @since 9
4725e1c44949Sopenharmony_ci     */
4726e1c44949Sopenharmony_ci    USER_NOT_MEMBER_OF_CUG = 87,
4727e1c44949Sopenharmony_ci
4728e1c44949Sopenharmony_ci    /**
4729e1c44949Sopenharmony_ci     * Indicates the call disconnect due to incompatible destination.
4730e1c44949Sopenharmony_ci     *
4731e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4732e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4733e1c44949Sopenharmony_ci     * @since 9
4734e1c44949Sopenharmony_ci     */
4735e1c44949Sopenharmony_ci    INCOMPATIBLE_DESTINATION = 88,
4736e1c44949Sopenharmony_ci
4737e1c44949Sopenharmony_ci    /**
4738e1c44949Sopenharmony_ci     * Indicates the call disconnect due to invalid transit network selection.
4739e1c44949Sopenharmony_ci     *
4740e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4741e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4742e1c44949Sopenharmony_ci     * @since 9
4743e1c44949Sopenharmony_ci     */
4744e1c44949Sopenharmony_ci    INVALID_TRANSIT_NETWORK_SELECTION = 91,
4745e1c44949Sopenharmony_ci
4746e1c44949Sopenharmony_ci    /**
4747e1c44949Sopenharmony_ci     * Indicates the call disconnect due to semantically incorrect message.
4748e1c44949Sopenharmony_ci     *
4749e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4750e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4751e1c44949Sopenharmony_ci     * @since 9
4752e1c44949Sopenharmony_ci     */
4753e1c44949Sopenharmony_ci    SEMANTICALLY_INCORRECT_MESSAGE = 95,
4754e1c44949Sopenharmony_ci
4755e1c44949Sopenharmony_ci    /**
4756e1c44949Sopenharmony_ci     * Indicates the call disconnect due to invalid mandatory information.
4757e1c44949Sopenharmony_ci     *
4758e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4759e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4760e1c44949Sopenharmony_ci     * @since 9
4761e1c44949Sopenharmony_ci     */
4762e1c44949Sopenharmony_ci    INVALID_MANDATORY_INFORMATION = 96,
4763e1c44949Sopenharmony_ci
4764e1c44949Sopenharmony_ci    /**
4765e1c44949Sopenharmony_ci     * Indicates the call disconnect due to msg type non-existent or not implemented.
4766e1c44949Sopenharmony_ci     *
4767e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4768e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4769e1c44949Sopenharmony_ci     * @since 9
4770e1c44949Sopenharmony_ci     */
4771e1c44949Sopenharmony_ci    MESSAGE_TYPE_NON_EXISTENT_OR_NOT_IMPLEMENTED = 97,
4772e1c44949Sopenharmony_ci
4773e1c44949Sopenharmony_ci    /**
4774e1c44949Sopenharmony_ci     * Indicates the call disconnect due to msg type not compatible with protocol state.
4775e1c44949Sopenharmony_ci     *
4776e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4777e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4778e1c44949Sopenharmony_ci     * @since 9
4779e1c44949Sopenharmony_ci     */
4780e1c44949Sopenharmony_ci    MESSAGE_TYPE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE = 98,
4781e1c44949Sopenharmony_ci
4782e1c44949Sopenharmony_ci    /**
4783e1c44949Sopenharmony_ci     * Indicates the call disconnect due to IE non-existent or not implemented.
4784e1c44949Sopenharmony_ci     *
4785e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4786e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4787e1c44949Sopenharmony_ci     * @since 9
4788e1c44949Sopenharmony_ci     */
4789e1c44949Sopenharmony_ci    INFORMATION_ELEMENT_NON_EXISTENT_OR_NOT_IMPLEMENTED = 99,
4790e1c44949Sopenharmony_ci
4791e1c44949Sopenharmony_ci    /**
4792e1c44949Sopenharmony_ci     * Indicates the call disconnect due to conditional IE error.
4793e1c44949Sopenharmony_ci     *
4794e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4795e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4796e1c44949Sopenharmony_ci     * @since 9
4797e1c44949Sopenharmony_ci     */
4798e1c44949Sopenharmony_ci    CONDITIONAL_IE_ERROR = 100,
4799e1c44949Sopenharmony_ci
4800e1c44949Sopenharmony_ci    /**
4801e1c44949Sopenharmony_ci     * Indicates the call disconnect due to message not compatible with protocol state.
4802e1c44949Sopenharmony_ci     *
4803e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4804e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4805e1c44949Sopenharmony_ci     * @since 9
4806e1c44949Sopenharmony_ci     */
4807e1c44949Sopenharmony_ci    MESSAGE_NOT_COMPATIBLE_WITH_PROTOCOL_STATE = 101,
4808e1c44949Sopenharmony_ci
4809e1c44949Sopenharmony_ci    /**
4810e1c44949Sopenharmony_ci     * Indicates the call disconnect due to recovery on timer expiry timer number.
4811e1c44949Sopenharmony_ci     *
4812e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4813e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4814e1c44949Sopenharmony_ci     * @since 9
4815e1c44949Sopenharmony_ci     */
4816e1c44949Sopenharmony_ci    RECOVERY_ON_TIMER_EXPIRED = 102,
4817e1c44949Sopenharmony_ci
4818e1c44949Sopenharmony_ci    /**
4819e1c44949Sopenharmony_ci     * Indicates the call disconnect due to protocol error, unspecified.
4820e1c44949Sopenharmony_ci     *
4821e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4822e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4823e1c44949Sopenharmony_ci     * @since 9
4824e1c44949Sopenharmony_ci     */
4825e1c44949Sopenharmony_ci    PROTOCOL_ERROR_UNSPECIFIED = 111,
4826e1c44949Sopenharmony_ci
4827e1c44949Sopenharmony_ci    /**
4828e1c44949Sopenharmony_ci     * Indicates the call disconnect due to interworking, unspecified.
4829e1c44949Sopenharmony_ci     *
4830e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4831e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4832e1c44949Sopenharmony_ci     * @since 9
4833e1c44949Sopenharmony_ci     */
4834e1c44949Sopenharmony_ci    INTERWORKING_UNSPECIFIED = 127,
4835e1c44949Sopenharmony_ci
4836e1c44949Sopenharmony_ci    /**
4837e1c44949Sopenharmony_ci     * Indicates the call disconnect due to call barred.
4838e1c44949Sopenharmony_ci     *
4839e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4840e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4841e1c44949Sopenharmony_ci     * @since 9
4842e1c44949Sopenharmony_ci     */
4843e1c44949Sopenharmony_ci    CALL_BARRED = 240,
4844e1c44949Sopenharmony_ci
4845e1c44949Sopenharmony_ci    /**
4846e1c44949Sopenharmony_ci     * Indicates the call disconnect due to FDN blocked.
4847e1c44949Sopenharmony_ci     *
4848e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4849e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4850e1c44949Sopenharmony_ci     * @since 9
4851e1c44949Sopenharmony_ci     */
4852e1c44949Sopenharmony_ci    FDN_BLOCKED = 241,
4853e1c44949Sopenharmony_ci
4854e1c44949Sopenharmony_ci    /**
4855e1c44949Sopenharmony_ci     * Indicates the call disconnect due to IMSI in VLR is unknown.
4856e1c44949Sopenharmony_ci     *
4857e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4858e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4859e1c44949Sopenharmony_ci     * @since 9
4860e1c44949Sopenharmony_ci     */
4861e1c44949Sopenharmony_ci    IMSI_UNKNOWN_IN_VLR = 242,
4862e1c44949Sopenharmony_ci
4863e1c44949Sopenharmony_ci    /**
4864e1c44949Sopenharmony_ci     * Indicates the call disconnect due to IMEI not accepted.
4865e1c44949Sopenharmony_ci     *
4866e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4867e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4868e1c44949Sopenharmony_ci     * @since 9
4869e1c44949Sopenharmony_ci     */
4870e1c44949Sopenharmony_ci    IMEI_NOT_ACCEPTED = 243,
4871e1c44949Sopenharmony_ci
4872e1c44949Sopenharmony_ci    /**
4873e1c44949Sopenharmony_ci     * Indicates the call disconnect due to dial modified to USSD.
4874e1c44949Sopenharmony_ci     *
4875e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4876e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4877e1c44949Sopenharmony_ci     * @since 9
4878e1c44949Sopenharmony_ci     */
4879e1c44949Sopenharmony_ci    DIAL_MODIFIED_TO_USSD = 244,
4880e1c44949Sopenharmony_ci
4881e1c44949Sopenharmony_ci    /**
4882e1c44949Sopenharmony_ci     * Indicates the call disconnect due to dial modified to SS.
4883e1c44949Sopenharmony_ci     *
4884e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4885e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4886e1c44949Sopenharmony_ci     * @since 9
4887e1c44949Sopenharmony_ci     */
4888e1c44949Sopenharmony_ci    DIAL_MODIFIED_TO_SS = 245,
4889e1c44949Sopenharmony_ci
4890e1c44949Sopenharmony_ci    /**
4891e1c44949Sopenharmony_ci     * Indicates the call disconnect due to dial modified to dial.
4892e1c44949Sopenharmony_ci     *
4893e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4894e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4895e1c44949Sopenharmony_ci     * @since 9
4896e1c44949Sopenharmony_ci     */
4897e1c44949Sopenharmony_ci    DIAL_MODIFIED_TO_DIAL = 246,
4898e1c44949Sopenharmony_ci
4899e1c44949Sopenharmony_ci    /**
4900e1c44949Sopenharmony_ci     * Indicates the call disconnect due to Radio off.
4901e1c44949Sopenharmony_ci     *
4902e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4903e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4904e1c44949Sopenharmony_ci     * @since 9
4905e1c44949Sopenharmony_ci     */
4906e1c44949Sopenharmony_ci    RADIO_OFF = 247,
4907e1c44949Sopenharmony_ci
4908e1c44949Sopenharmony_ci    /**
4909e1c44949Sopenharmony_ci     * Indicates the call disconnect due to out of service.
4910e1c44949Sopenharmony_ci     *
4911e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4912e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4913e1c44949Sopenharmony_ci     * @since 9
4914e1c44949Sopenharmony_ci     */
4915e1c44949Sopenharmony_ci    OUT_OF_SERVICE = 248,
4916e1c44949Sopenharmony_ci
4917e1c44949Sopenharmony_ci    /**
4918e1c44949Sopenharmony_ci     * Indicates the call disconnect due to invalid SIM.
4919e1c44949Sopenharmony_ci     *
4920e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4921e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4922e1c44949Sopenharmony_ci     * @since 9
4923e1c44949Sopenharmony_ci     */
4924e1c44949Sopenharmony_ci    NO_VALID_SIM = 249,
4925e1c44949Sopenharmony_ci
4926e1c44949Sopenharmony_ci    /**
4927e1c44949Sopenharmony_ci     * Indicates the call disconnect due to radio internal error.
4928e1c44949Sopenharmony_ci     *
4929e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4930e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4931e1c44949Sopenharmony_ci     * @since 9
4932e1c44949Sopenharmony_ci     */
4933e1c44949Sopenharmony_ci    RADIO_INTERNAL_ERROR = 250,
4934e1c44949Sopenharmony_ci
4935e1c44949Sopenharmony_ci    /**
4936e1c44949Sopenharmony_ci     * Indicates the call disconnect due to network response timeout.
4937e1c44949Sopenharmony_ci     *
4938e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4939e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4940e1c44949Sopenharmony_ci     * @since 9
4941e1c44949Sopenharmony_ci     */
4942e1c44949Sopenharmony_ci    NETWORK_RESP_TIMEOUT = 251,
4943e1c44949Sopenharmony_ci
4944e1c44949Sopenharmony_ci    /**
4945e1c44949Sopenharmony_ci     * Indicates the call disconnect due to network reject.
4946e1c44949Sopenharmony_ci     *
4947e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4948e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4949e1c44949Sopenharmony_ci     * @since 9
4950e1c44949Sopenharmony_ci     */
4951e1c44949Sopenharmony_ci    NETWORK_REJECT = 252,
4952e1c44949Sopenharmony_ci
4953e1c44949Sopenharmony_ci    /**
4954e1c44949Sopenharmony_ci     * Indicates the call disconnect due to radio access failure.
4955e1c44949Sopenharmony_ci     *
4956e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4957e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4958e1c44949Sopenharmony_ci     * @since 9
4959e1c44949Sopenharmony_ci     */
4960e1c44949Sopenharmony_ci    RADIO_ACCESS_FAILURE = 253,
4961e1c44949Sopenharmony_ci
4962e1c44949Sopenharmony_ci    /**
4963e1c44949Sopenharmony_ci     * Indicates the call disconnect due to radio link failure.
4964e1c44949Sopenharmony_ci     *
4965e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4966e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4967e1c44949Sopenharmony_ci     * @since 9
4968e1c44949Sopenharmony_ci     */
4969e1c44949Sopenharmony_ci    RADIO_LINK_FAILURE = 254,
4970e1c44949Sopenharmony_ci
4971e1c44949Sopenharmony_ci    /**
4972e1c44949Sopenharmony_ci     * Indicates the call disconnect due to radio link lost.
4973e1c44949Sopenharmony_ci     *
4974e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4975e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4976e1c44949Sopenharmony_ci     * @since 9
4977e1c44949Sopenharmony_ci     */
4978e1c44949Sopenharmony_ci    RADIO_LINK_LOST = 255,
4979e1c44949Sopenharmony_ci
4980e1c44949Sopenharmony_ci    /**
4981e1c44949Sopenharmony_ci     * Indicates the call disconnect due to radio uplink failure.
4982e1c44949Sopenharmony_ci     *
4983e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4984e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4985e1c44949Sopenharmony_ci     * @since 9
4986e1c44949Sopenharmony_ci     */
4987e1c44949Sopenharmony_ci    RADIO_UPLINK_FAILURE = 256,
4988e1c44949Sopenharmony_ci
4989e1c44949Sopenharmony_ci    /**
4990e1c44949Sopenharmony_ci     * Indicates the call disconnect due to radio setup failure.
4991e1c44949Sopenharmony_ci     *
4992e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
4993e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
4994e1c44949Sopenharmony_ci     * @since 9
4995e1c44949Sopenharmony_ci     */
4996e1c44949Sopenharmony_ci    RADIO_SETUP_FAILURE = 257,
4997e1c44949Sopenharmony_ci
4998e1c44949Sopenharmony_ci    /**
4999e1c44949Sopenharmony_ci     * Indicates the call disconnect due to radio release normal.
5000e1c44949Sopenharmony_ci     *
5001e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5002e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5003e1c44949Sopenharmony_ci     * @since 9
5004e1c44949Sopenharmony_ci     */
5005e1c44949Sopenharmony_ci    RADIO_RELEASE_NORMAL = 258,
5006e1c44949Sopenharmony_ci
5007e1c44949Sopenharmony_ci    /**
5008e1c44949Sopenharmony_ci     * Indicates the call disconnect due to radio release abnormal.
5009e1c44949Sopenharmony_ci     *
5010e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5011e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5012e1c44949Sopenharmony_ci     * @since 9
5013e1c44949Sopenharmony_ci     */
5014e1c44949Sopenharmony_ci    RADIO_RELEASE_ABNORMAL = 259,
5015e1c44949Sopenharmony_ci
5016e1c44949Sopenharmony_ci    /**
5017e1c44949Sopenharmony_ci     * Indicates the call disconnect due to access class blocked.
5018e1c44949Sopenharmony_ci     *
5019e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5020e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5021e1c44949Sopenharmony_ci     * @since 9
5022e1c44949Sopenharmony_ci     */
5023e1c44949Sopenharmony_ci    ACCESS_CLASS_BLOCKED = 260,
5024e1c44949Sopenharmony_ci
5025e1c44949Sopenharmony_ci    /**
5026e1c44949Sopenharmony_ci     * Indicates the call disconnect due to network detach.
5027e1c44949Sopenharmony_ci     *
5028e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5029e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5030e1c44949Sopenharmony_ci     * @since 9
5031e1c44949Sopenharmony_ci     */
5032e1c44949Sopenharmony_ci    NETWORK_DETACH = 261,
5033e1c44949Sopenharmony_ci
5034e1c44949Sopenharmony_ci    /**
5035e1c44949Sopenharmony_ci     * Indicates the call disconnect due to invalid parameter.
5036e1c44949Sopenharmony_ci     *
5037e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5038e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5039e1c44949Sopenharmony_ci     * @since 8
5040e1c44949Sopenharmony_ci     */
5041e1c44949Sopenharmony_ci    INVALID_PARAMETER = 1025,
5042e1c44949Sopenharmony_ci
5043e1c44949Sopenharmony_ci    /**
5044e1c44949Sopenharmony_ci     * Indicates the call disconnect due to sim not exit.
5045e1c44949Sopenharmony_ci     *
5046e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5047e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5048e1c44949Sopenharmony_ci     * @since 8
5049e1c44949Sopenharmony_ci     */
5050e1c44949Sopenharmony_ci    SIM_NOT_EXIT = 1026,
5051e1c44949Sopenharmony_ci
5052e1c44949Sopenharmony_ci    /**
5053e1c44949Sopenharmony_ci     * Indicates the call disconnect due to sim pin need.
5054e1c44949Sopenharmony_ci     *
5055e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5056e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5057e1c44949Sopenharmony_ci     * @since 8
5058e1c44949Sopenharmony_ci     */
5059e1c44949Sopenharmony_ci    SIM_PIN_NEED = 1027,
5060e1c44949Sopenharmony_ci
5061e1c44949Sopenharmony_ci    /**
5062e1c44949Sopenharmony_ci     * Indicates the call disconnect due to call not allow.
5063e1c44949Sopenharmony_ci     *
5064e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5065e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5066e1c44949Sopenharmony_ci     * @since 8
5067e1c44949Sopenharmony_ci     */
5068e1c44949Sopenharmony_ci    CALL_NOT_ALLOW = 1029,
5069e1c44949Sopenharmony_ci
5070e1c44949Sopenharmony_ci    /**
5071e1c44949Sopenharmony_ci     * Indicates the call disconnect due to sim invalid.
5072e1c44949Sopenharmony_ci     *
5073e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5074e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5075e1c44949Sopenharmony_ci     * @since 8
5076e1c44949Sopenharmony_ci     */
5077e1c44949Sopenharmony_ci    SIM_INVALID = 1045,
5078e1c44949Sopenharmony_ci
5079e1c44949Sopenharmony_ci    /**
5080e1c44949Sopenharmony_ci     * Indicates the call disconnect due to unknown error.
5081e1c44949Sopenharmony_ci     *
5082e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5083e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5084e1c44949Sopenharmony_ci     * @since 8
5085e1c44949Sopenharmony_ci     */
5086e1c44949Sopenharmony_ci    UNKNOWN = 1279,
5087e1c44949Sopenharmony_ci  }
5088e1c44949Sopenharmony_ci
5089e1c44949Sopenharmony_ci  /**
5090e1c44949Sopenharmony_ci   * Indicates the cause of a call disconnection.
5091e1c44949Sopenharmony_ci   *
5092e1c44949Sopenharmony_ci   * @interface DisconnectedDetails
5093e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
5094e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
5095e1c44949Sopenharmony_ci   * @since 9
5096e1c44949Sopenharmony_ci   */
5097e1c44949Sopenharmony_ci  export interface DisconnectedDetails {
5098e1c44949Sopenharmony_ci    /**
5099e1c44949Sopenharmony_ci     * Indicates the reason for ending the call.
5100e1c44949Sopenharmony_ci     *
5101e1c44949Sopenharmony_ci     * @type { DisconnectedReason }
5102e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5103e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5104e1c44949Sopenharmony_ci     * @since 9
5105e1c44949Sopenharmony_ci     */
5106e1c44949Sopenharmony_ci    reason: DisconnectedReason;
5107e1c44949Sopenharmony_ci    /**
5108e1c44949Sopenharmony_ci     * Indicates the message for ending the call.
5109e1c44949Sopenharmony_ci     *
5110e1c44949Sopenharmony_ci     * @type { string }
5111e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5112e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5113e1c44949Sopenharmony_ci     * @since 9
5114e1c44949Sopenharmony_ci     */
5115e1c44949Sopenharmony_ci    message: string;
5116e1c44949Sopenharmony_ci  }
5117e1c44949Sopenharmony_ci
5118e1c44949Sopenharmony_ci  /**
5119e1c44949Sopenharmony_ci   * Indicates the ims call mode info of a video call.
5120e1c44949Sopenharmony_ci   *
5121e1c44949Sopenharmony_ci   * @interface ImsCallModeInfo
5122e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
5123e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
5124e1c44949Sopenharmony_ci   * @since 11
5125e1c44949Sopenharmony_ci   */
5126e1c44949Sopenharmony_ci  export interface ImsCallModeInfo {
5127e1c44949Sopenharmony_ci    /**
5128e1c44949Sopenharmony_ci     * Indicates the id of call.
5129e1c44949Sopenharmony_ci     *
5130e1c44949Sopenharmony_ci     * @type { number }
5131e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5132e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5133e1c44949Sopenharmony_ci     * @since 11
5134e1c44949Sopenharmony_ci     */
5135e1c44949Sopenharmony_ci    callId: number;
5136e1c44949Sopenharmony_ci    /**
5137e1c44949Sopenharmony_ci     * Indicates the request result.
5138e1c44949Sopenharmony_ci     *
5139e1c44949Sopenharmony_ci     * @type { VideoRequestResultType }
5140e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5141e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5142e1c44949Sopenharmony_ci     * @since 11
5143e1c44949Sopenharmony_ci     */
5144e1c44949Sopenharmony_ci    result: VideoRequestResultType;
5145e1c44949Sopenharmony_ci    /**
5146e1c44949Sopenharmony_ci     * Indicates if this is a request which received from remote,
5147e1c44949Sopenharmony_ci     *
5148e1c44949Sopenharmony_ci     * @type { boolean }
5149e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5150e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5151e1c44949Sopenharmony_ci     * @since 11
5152e1c44949Sopenharmony_ci     */
5153e1c44949Sopenharmony_ci    isRequestInfo: boolean;
5154e1c44949Sopenharmony_ci    /**
5155e1c44949Sopenharmony_ci     * Indicates the ImsCallMode of call.
5156e1c44949Sopenharmony_ci     *
5157e1c44949Sopenharmony_ci     * @type { ImsCallMode }
5158e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5159e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5160e1c44949Sopenharmony_ci     * @since 11
5161e1c44949Sopenharmony_ci     */
5162e1c44949Sopenharmony_ci    imsCallMode: ImsCallMode;
5163e1c44949Sopenharmony_ci  }
5164e1c44949Sopenharmony_ci
5165e1c44949Sopenharmony_ci  /**
5166e1c44949Sopenharmony_ci   * Indicates the call session event of a video call.
5167e1c44949Sopenharmony_ci   *
5168e1c44949Sopenharmony_ci   * @interface CallSessionEvent
5169e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
5170e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
5171e1c44949Sopenharmony_ci   * @since 11
5172e1c44949Sopenharmony_ci   */
5173e1c44949Sopenharmony_ci  export interface CallSessionEvent {
5174e1c44949Sopenharmony_ci    /**
5175e1c44949Sopenharmony_ci     * Indicates the id of call.
5176e1c44949Sopenharmony_ci     *
5177e1c44949Sopenharmony_ci     * @type { number }
5178e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5179e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5180e1c44949Sopenharmony_ci     * @since 11
5181e1c44949Sopenharmony_ci     */
5182e1c44949Sopenharmony_ci    callId: number;
5183e1c44949Sopenharmony_ci    /**
5184e1c44949Sopenharmony_ci     * Indicates the event id of video call.
5185e1c44949Sopenharmony_ci     *
5186e1c44949Sopenharmony_ci     * @type { CallSessionEventId }
5187e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5188e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5189e1c44949Sopenharmony_ci     * @since 11
5190e1c44949Sopenharmony_ci     */
5191e1c44949Sopenharmony_ci    eventId: CallSessionEventId;
5192e1c44949Sopenharmony_ci  }
5193e1c44949Sopenharmony_ci
5194e1c44949Sopenharmony_ci  /**
5195e1c44949Sopenharmony_ci   * Indicates the peer dimension.
5196e1c44949Sopenharmony_ci   *
5197e1c44949Sopenharmony_ci   * @interface PeerDimensionsDetail
5198e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
5199e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
5200e1c44949Sopenharmony_ci   * @since 11
5201e1c44949Sopenharmony_ci   */
5202e1c44949Sopenharmony_ci  export interface PeerDimensionsDetail {
5203e1c44949Sopenharmony_ci    /**
5204e1c44949Sopenharmony_ci     * Indicates the id of call.
5205e1c44949Sopenharmony_ci     *
5206e1c44949Sopenharmony_ci     * @type { number }
5207e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5208e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5209e1c44949Sopenharmony_ci     * @since 11
5210e1c44949Sopenharmony_ci     */
5211e1c44949Sopenharmony_ci    callId: number;
5212e1c44949Sopenharmony_ci    /**
5213e1c44949Sopenharmony_ci     * Indicates the peer dimensions width.
5214e1c44949Sopenharmony_ci     *
5215e1c44949Sopenharmony_ci     * @type { number }
5216e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5217e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5218e1c44949Sopenharmony_ci     * @since 11
5219e1c44949Sopenharmony_ci     */
5220e1c44949Sopenharmony_ci    width: number;
5221e1c44949Sopenharmony_ci    /**
5222e1c44949Sopenharmony_ci     * Indicates the the peer dimensions height.
5223e1c44949Sopenharmony_ci     *
5224e1c44949Sopenharmony_ci     * @type { number }
5225e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5226e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5227e1c44949Sopenharmony_ci     * @since 11
5228e1c44949Sopenharmony_ci     */
5229e1c44949Sopenharmony_ci    height: number;
5230e1c44949Sopenharmony_ci  }
5231e1c44949Sopenharmony_ci
5232e1c44949Sopenharmony_ci  /**
5233e1c44949Sopenharmony_ci   * Indicates the camera capabilities.
5234e1c44949Sopenharmony_ci   *
5235e1c44949Sopenharmony_ci   * @interface CameraCapabilities
5236e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
5237e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
5238e1c44949Sopenharmony_ci   * @since 11
5239e1c44949Sopenharmony_ci   */
5240e1c44949Sopenharmony_ci  export interface CameraCapabilities {
5241e1c44949Sopenharmony_ci    /**
5242e1c44949Sopenharmony_ci     * Indicates the id of call.
5243e1c44949Sopenharmony_ci     *
5244e1c44949Sopenharmony_ci     * @type { number }
5245e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5246e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5247e1c44949Sopenharmony_ci     * @since 11
5248e1c44949Sopenharmony_ci     */
5249e1c44949Sopenharmony_ci    callId: number;
5250e1c44949Sopenharmony_ci    /**
5251e1c44949Sopenharmony_ci     * Indicates the camera width.
5252e1c44949Sopenharmony_ci     *
5253e1c44949Sopenharmony_ci     * @type { number }
5254e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5255e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5256e1c44949Sopenharmony_ci     * @since 11
5257e1c44949Sopenharmony_ci     */
5258e1c44949Sopenharmony_ci    width: number;
5259e1c44949Sopenharmony_ci    /**
5260e1c44949Sopenharmony_ci     * Indicates the the camera height.
5261e1c44949Sopenharmony_ci     *
5262e1c44949Sopenharmony_ci     * @type { number }
5263e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5264e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5265e1c44949Sopenharmony_ci     * @since 11
5266e1c44949Sopenharmony_ci     */
5267e1c44949Sopenharmony_ci    height: number;
5268e1c44949Sopenharmony_ci  }
5269e1c44949Sopenharmony_ci
5270e1c44949Sopenharmony_ci  /**
5271e1c44949Sopenharmony_ci   * Indicates the mark information of the phone number.
5272e1c44949Sopenharmony_ci   *
5273e1c44949Sopenharmony_ci   * @interface NumberMarkInfo
5274e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
5275e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
5276e1c44949Sopenharmony_ci   * @since 12
5277e1c44949Sopenharmony_ci   */
5278e1c44949Sopenharmony_ci  export interface NumberMarkInfo {
5279e1c44949Sopenharmony_ci    /**
5280e1c44949Sopenharmony_ci     * Indicates the type of number mark.
5281e1c44949Sopenharmony_ci     *
5282e1c44949Sopenharmony_ci     * @type { MarkType }
5283e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5284e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5285e1c44949Sopenharmony_ci     * @since 12
5286e1c44949Sopenharmony_ci     */
5287e1c44949Sopenharmony_ci    markType: MarkType;
5288e1c44949Sopenharmony_ci
5289e1c44949Sopenharmony_ci    /**
5290e1c44949Sopenharmony_ci     * Indicates the content of number mark.
5291e1c44949Sopenharmony_ci     *
5292e1c44949Sopenharmony_ci     * @type { ?string }
5293e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5294e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5295e1c44949Sopenharmony_ci     * @since 12
5296e1c44949Sopenharmony_ci     */
5297e1c44949Sopenharmony_ci    markContent?: string;
5298e1c44949Sopenharmony_ci
5299e1c44949Sopenharmony_ci    /**
5300e1c44949Sopenharmony_ci     * Indicates the count of number mark.
5301e1c44949Sopenharmony_ci     *
5302e1c44949Sopenharmony_ci     * @type { ?number }
5303e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5304e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5305e1c44949Sopenharmony_ci     * @since 12
5306e1c44949Sopenharmony_ci     */
5307e1c44949Sopenharmony_ci    markCount?: number;
5308e1c44949Sopenharmony_ci
5309e1c44949Sopenharmony_ci    /**
5310e1c44949Sopenharmony_ci     * Indicates the source of number mark.
5311e1c44949Sopenharmony_ci     *
5312e1c44949Sopenharmony_ci     * @type { ?string }
5313e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5314e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5315e1c44949Sopenharmony_ci     * @since 12
5316e1c44949Sopenharmony_ci     */
5317e1c44949Sopenharmony_ci    markSource?: string;
5318e1c44949Sopenharmony_ci
5319e1c44949Sopenharmony_ci    /**
5320e1c44949Sopenharmony_ci     * Indicates if this is a number mark from cloud.
5321e1c44949Sopenharmony_ci     *
5322e1c44949Sopenharmony_ci     * @type { ?boolean }
5323e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5324e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5325e1c44949Sopenharmony_ci     * @since 12
5326e1c44949Sopenharmony_ci     */
5327e1c44949Sopenharmony_ci    isCloud?: boolean;
5328e1c44949Sopenharmony_ci  }
5329e1c44949Sopenharmony_ci
5330e1c44949Sopenharmony_ci  /**
5331e1c44949Sopenharmony_ci   * Indicates the type of the number mark.
5332e1c44949Sopenharmony_ci   *
5333e1c44949Sopenharmony_ci   * @enum { number }
5334e1c44949Sopenharmony_ci   * @syscap SystemCapability.Telephony.CallManager
5335e1c44949Sopenharmony_ci   * @systemapi Hide this for inner system use.
5336e1c44949Sopenharmony_ci   * @since 12
5337e1c44949Sopenharmony_ci   */
5338e1c44949Sopenharmony_ci  export enum MarkType {
5339e1c44949Sopenharmony_ci    /**
5340e1c44949Sopenharmony_ci     * Indicates the mark is none.
5341e1c44949Sopenharmony_ci     *
5342e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5343e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5344e1c44949Sopenharmony_ci     * @since 12
5345e1c44949Sopenharmony_ci     */
5346e1c44949Sopenharmony_ci    MARK_TYPE_NONE = 0,
5347e1c44949Sopenharmony_ci
5348e1c44949Sopenharmony_ci    /**
5349e1c44949Sopenharmony_ci     * Indicates the mark is crank.
5350e1c44949Sopenharmony_ci     *
5351e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5352e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5353e1c44949Sopenharmony_ci     * @since 12
5354e1c44949Sopenharmony_ci     */
5355e1c44949Sopenharmony_ci    MARK_TYPE_CRANK = 1,
5356e1c44949Sopenharmony_ci
5357e1c44949Sopenharmony_ci    /**
5358e1c44949Sopenharmony_ci     * Indicates the mark is fraud.
5359e1c44949Sopenharmony_ci     *
5360e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5361e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5362e1c44949Sopenharmony_ci     * @since 12
5363e1c44949Sopenharmony_ci     */
5364e1c44949Sopenharmony_ci    MARK_TYPE_FRAUD = 2,
5365e1c44949Sopenharmony_ci
5366e1c44949Sopenharmony_ci    /**
5367e1c44949Sopenharmony_ci     * Indicates the mark is express.
5368e1c44949Sopenharmony_ci     *
5369e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5370e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5371e1c44949Sopenharmony_ci     * @since 12
5372e1c44949Sopenharmony_ci     */
5373e1c44949Sopenharmony_ci    MARK_TYPE_EXPRESS = 3,
5374e1c44949Sopenharmony_ci
5375e1c44949Sopenharmony_ci    /**
5376e1c44949Sopenharmony_ci     * Indicates the mark is promote sales.
5377e1c44949Sopenharmony_ci     *
5378e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5379e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5380e1c44949Sopenharmony_ci     * @since 12
5381e1c44949Sopenharmony_ci     */
5382e1c44949Sopenharmony_ci    MARK_TYPE_PROMOTE_SALES = 4,
5383e1c44949Sopenharmony_ci
5384e1c44949Sopenharmony_ci    /**
5385e1c44949Sopenharmony_ci     * Indicates the mark is house agent.
5386e1c44949Sopenharmony_ci     *
5387e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5388e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5389e1c44949Sopenharmony_ci     * @since 12
5390e1c44949Sopenharmony_ci     */
5391e1c44949Sopenharmony_ci    MARK_TYPE_HOUSE_AGENT = 5,
5392e1c44949Sopenharmony_ci
5393e1c44949Sopenharmony_ci    /**
5394e1c44949Sopenharmony_ci     * Indicates the mark is insurance.
5395e1c44949Sopenharmony_ci     *
5396e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5397e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5398e1c44949Sopenharmony_ci     * @since 12
5399e1c44949Sopenharmony_ci     */
5400e1c44949Sopenharmony_ci    MARK_TYPE_INSURANCE = 6,
5401e1c44949Sopenharmony_ci
5402e1c44949Sopenharmony_ci    /**
5403e1c44949Sopenharmony_ci     * Indicates the mark is taxi.
5404e1c44949Sopenharmony_ci     *
5405e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5406e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5407e1c44949Sopenharmony_ci     * @since 12
5408e1c44949Sopenharmony_ci     */
5409e1c44949Sopenharmony_ci    MARK_TYPE_TAXI = 7,
5410e1c44949Sopenharmony_ci
5411e1c44949Sopenharmony_ci    /**
5412e1c44949Sopenharmony_ci     * Indicates the mark is custom.
5413e1c44949Sopenharmony_ci     *
5414e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5415e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5416e1c44949Sopenharmony_ci     * @since 12
5417e1c44949Sopenharmony_ci     */
5418e1c44949Sopenharmony_ci    MARK_TYPE_CUSTOM = 8,
5419e1c44949Sopenharmony_ci
5420e1c44949Sopenharmony_ci    /**
5421e1c44949Sopenharmony_ci     * Indicates the mark is others.
5422e1c44949Sopenharmony_ci     *
5423e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5424e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5425e1c44949Sopenharmony_ci     * @since 12
5426e1c44949Sopenharmony_ci     */
5427e1c44949Sopenharmony_ci    MARK_TYPE_OTHERS = 9,
5428e1c44949Sopenharmony_ci
5429e1c44949Sopenharmony_ci    /**
5430e1c44949Sopenharmony_ci     * Indicates the mark is yellow page.
5431e1c44949Sopenharmony_ci     *
5432e1c44949Sopenharmony_ci     * @syscap SystemCapability.Telephony.CallManager
5433e1c44949Sopenharmony_ci     * @systemapi Hide this for inner system use.
5434e1c44949Sopenharmony_ci     * @since 12
5435e1c44949Sopenharmony_ci     */
5436e1c44949Sopenharmony_ci    MARK_TYPE_YELLOW_PAGE = 10
5437e1c44949Sopenharmony_ci  }
5438e1c44949Sopenharmony_ci}
5439e1c44949Sopenharmony_ci
5440e1c44949Sopenharmony_ciexport default call;
5441