161847f8eSopenharmony_ci/*
261847f8eSopenharmony_ci * Copyright (c) 2022-2023 Huawei Device Co., Ltd.
361847f8eSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
461847f8eSopenharmony_ci * you may not use this file except in compliance with the License.
561847f8eSopenharmony_ci * You may obtain a copy of the License at
661847f8eSopenharmony_ci *
761847f8eSopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
861847f8eSopenharmony_ci *
961847f8eSopenharmony_ci * Unless required by applicable law or agreed to in writing, software
1061847f8eSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
1161847f8eSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1261847f8eSopenharmony_ci * See the License for the specific language governing permissions and
1361847f8eSopenharmony_ci * limitations under the License.
1461847f8eSopenharmony_ci */
1561847f8eSopenharmony_ci
1661847f8eSopenharmony_ci/**
1761847f8eSopenharmony_ci * @file
1861847f8eSopenharmony_ci * @kit CalendarKit
1961847f8eSopenharmony_ci */
2061847f8eSopenharmony_ci
2161847f8eSopenharmony_ciimport { AsyncCallback } from './@ohos.base';
2261847f8eSopenharmony_ciimport type Context from './application/Context';
2361847f8eSopenharmony_ci
2461847f8eSopenharmony_ci/**
2561847f8eSopenharmony_ci * This provides calendar data access abilities.
2661847f8eSopenharmony_ci * @namespace calendarManager
2761847f8eSopenharmony_ci * @syscap SystemCapability.Applications.CalendarData
2861847f8eSopenharmony_ci * @since 10
2961847f8eSopenharmony_ci */
3061847f8eSopenharmony_ci/**
3161847f8eSopenharmony_ci * This provides calendar data access abilities.
3261847f8eSopenharmony_ci * @namespace calendarManager
3361847f8eSopenharmony_ci * @syscap SystemCapability.Applications.CalendarData
3461847f8eSopenharmony_ci * @atomicservice
3561847f8eSopenharmony_ci * @since 11
3661847f8eSopenharmony_ci */
3761847f8eSopenharmony_cideclare namespace calendarManager {
3861847f8eSopenharmony_ci  /**
3961847f8eSopenharmony_ci   * Returns an instance of CalendarManager
4061847f8eSopenharmony_ci   *
4161847f8eSopenharmony_ci   * @param { Context } context - Hap context information
4261847f8eSopenharmony_ci   * @returns { CalendarManager } Instance of CalendarManager
4361847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
4461847f8eSopenharmony_ci   * @StageModelOnly
4561847f8eSopenharmony_ci   * @since 10
4661847f8eSopenharmony_ci   */
4761847f8eSopenharmony_ci  /**
4861847f8eSopenharmony_ci   * Returns an instance of CalendarManager
4961847f8eSopenharmony_ci   *
5061847f8eSopenharmony_ci   * @param { Context } context - Hap context information
5161847f8eSopenharmony_ci   * @returns { CalendarManager } Instance of CalendarManager
5261847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
5361847f8eSopenharmony_ci   * @StageModelOnly
5461847f8eSopenharmony_ci   * @atomicservice
5561847f8eSopenharmony_ci   * @since 11
5661847f8eSopenharmony_ci   */
5761847f8eSopenharmony_ci  function getCalendarManager(context: Context) : CalendarManager;
5861847f8eSopenharmony_ci  
5961847f8eSopenharmony_ci  /**
6061847f8eSopenharmony_ci   * Defines the CalendarManager class and provides functions to access the calendar data.
6161847f8eSopenharmony_ci   *
6261847f8eSopenharmony_ci   * @typedef CalendarManager
6361847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
6461847f8eSopenharmony_ci   * @since 10
6561847f8eSopenharmony_ci   */
6661847f8eSopenharmony_ci  /**
6761847f8eSopenharmony_ci   * Defines the CalendarManager class and provides functions to access the calendar data.
6861847f8eSopenharmony_ci   *
6961847f8eSopenharmony_ci   * @typedef CalendarManager
7061847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
7161847f8eSopenharmony_ci   * @atomicservice
7261847f8eSopenharmony_ci   * @since 11
7361847f8eSopenharmony_ci   */
7461847f8eSopenharmony_ci  export interface CalendarManager {
7561847f8eSopenharmony_ci    /**
7661847f8eSopenharmony_ci     * Create calendar instance.
7761847f8eSopenharmony_ci     * @permission ohos.permission.WRITE_CALENDAR
7861847f8eSopenharmony_ci     * @param { CalendarAccount } calendarAccount - calendar account to create calendar
7961847f8eSopenharmony_ci     * @returns { Promise<Calendar> } the promise with calendar corresponding to account
8061847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission denied.
8161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
8261847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
8361847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
8461847f8eSopenharmony_ci     * @since 10
8561847f8eSopenharmony_ci     */
8661847f8eSopenharmony_ci    createCalendar(calendarAccount: CalendarAccount): Promise<Calendar>;
8761847f8eSopenharmony_ci
8861847f8eSopenharmony_ci    /**
8961847f8eSopenharmony_ci     * Create calendar instance.
9061847f8eSopenharmony_ci     *
9161847f8eSopenharmony_ci     * @permission ohos.permission.WRITE_CALENDAR
9261847f8eSopenharmony_ci     * @param { CalendarAccount } calendarAccount - calendar account to create calendar
9361847f8eSopenharmony_ci     * @param { AsyncCallback<Calendar> } callback - the callback of createCalendar
9461847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission denied.
9561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
9661847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
9761847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
9861847f8eSopenharmony_ci     * @since 10
9961847f8eSopenharmony_ci     */
10061847f8eSopenharmony_ci    createCalendar(calendarAccount: CalendarAccount, callback: AsyncCallback<Calendar>): void;
10161847f8eSopenharmony_ci
10261847f8eSopenharmony_ci    /**
10361847f8eSopenharmony_ci     * Delete calendar instance.
10461847f8eSopenharmony_ci     *
10561847f8eSopenharmony_ci     * @permission ohos.permission.WRITE_CALENDAR
10661847f8eSopenharmony_ci     * @param { Calendar } calendar - calendar to be deleted
10761847f8eSopenharmony_ci     * @returns { Promise<void> } the promise returned by the function.
10861847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission denied.
10961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
11061847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
11161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
11261847f8eSopenharmony_ci     * @since 10
11361847f8eSopenharmony_ci     */
11461847f8eSopenharmony_ci    deleteCalendar(calendar: Calendar): Promise<void>;
11561847f8eSopenharmony_ci
11661847f8eSopenharmony_ci    /**
11761847f8eSopenharmony_ci     * Delete calendar instance.
11861847f8eSopenharmony_ci     *
11961847f8eSopenharmony_ci     * @permission ohos.permission.WRITE_CALENDAR
12061847f8eSopenharmony_ci     * @param { Calendar } calendar - calendar to be deleted
12161847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - the callback of deleteCalendar
12261847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission denied.
12361847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
12461847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
12561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
12661847f8eSopenharmony_ci     * @since 10
12761847f8eSopenharmony_ci     */
12861847f8eSopenharmony_ci    deleteCalendar(calendar: Calendar, callback: AsyncCallback<void>): void;
12961847f8eSopenharmony_ci
13061847f8eSopenharmony_ci    /**
13161847f8eSopenharmony_ci     * Get calendar instance from database.
13261847f8eSopenharmony_ci     *
13361847f8eSopenharmony_ci     * @permission ohos.permission.READ_CALENDAR
13461847f8eSopenharmony_ci     * @param { CalendarAccount } calendarAccount - specify calendar account to retrieve
13561847f8eSopenharmony_ci     * @returns { Promise<Calendar> } the promise returned by the function.
13661847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission denied.
13761847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: Incorrect parameter types.
13861847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
13961847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
14061847f8eSopenharmony_ci     * @since 10
14161847f8eSopenharmony_ci     */
14261847f8eSopenharmony_ci    /**
14361847f8eSopenharmony_ci     * Get calendar instance from database.
14461847f8eSopenharmony_ci     *
14561847f8eSopenharmony_ci     * @permission ohos.permission.READ_CALENDAR
14661847f8eSopenharmony_ci     * @param { CalendarAccount } calendarAccount - specify calendar account to retrieve
14761847f8eSopenharmony_ci     * @returns { Promise<Calendar> } the promise returned by the function.
14861847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission denied.
14961847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: Incorrect parameter types.
15061847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
15161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
15261847f8eSopenharmony_ci     * @atomicservice
15361847f8eSopenharmony_ci     * @since 11
15461847f8eSopenharmony_ci     */
15561847f8eSopenharmony_ci    getCalendar(calendarAccount?: CalendarAccount): Promise<Calendar>;
15661847f8eSopenharmony_ci
15761847f8eSopenharmony_ci    /**
15861847f8eSopenharmony_ci     * Get calendar instance from database by specified account.
15961847f8eSopenharmony_ci     *
16061847f8eSopenharmony_ci     * @permission ohos.permission.READ_CALENDAR
16161847f8eSopenharmony_ci     * @param { CalendarAccount } calendarAccount - specify calendar account to retrieve
16261847f8eSopenharmony_ci     * @param { AsyncCallback<Calendar> } callback - the callback of getCalendar
16361847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission denied.
16461847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
16561847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
16661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
16761847f8eSopenharmony_ci     * @since 10
16861847f8eSopenharmony_ci     */
16961847f8eSopenharmony_ci    /**
17061847f8eSopenharmony_ci     * Get calendar instance from database by specified account.
17161847f8eSopenharmony_ci     *
17261847f8eSopenharmony_ci     * @permission ohos.permission.READ_CALENDAR
17361847f8eSopenharmony_ci     * @param { CalendarAccount } calendarAccount - specify calendar account to retrieve
17461847f8eSopenharmony_ci     * @param { AsyncCallback<Calendar> } callback - the callback of getCalendar
17561847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission denied.
17661847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
17761847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
17861847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
17961847f8eSopenharmony_ci     * @atomicservice
18061847f8eSopenharmony_ci     * @since 11
18161847f8eSopenharmony_ci     */
18261847f8eSopenharmony_ci    getCalendar(calendarAccount: CalendarAccount, callback: AsyncCallback<Calendar>): void;
18361847f8eSopenharmony_ci
18461847f8eSopenharmony_ci    /**
18561847f8eSopenharmony_ci     * Get default calendar instance from database.
18661847f8eSopenharmony_ci     *
18761847f8eSopenharmony_ci     * @permission ohos.permission.READ_CALENDAR
18861847f8eSopenharmony_ci     * @param { AsyncCallback<Calendar> } callback - the callback of getCalendar with default calendar instance
18961847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission denied.
19061847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
19161847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
19261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
19361847f8eSopenharmony_ci     * @since 10
19461847f8eSopenharmony_ci     */
19561847f8eSopenharmony_ci    /**
19661847f8eSopenharmony_ci     * Get default calendar instance from database.
19761847f8eSopenharmony_ci     *
19861847f8eSopenharmony_ci     * @permission ohos.permission.READ_CALENDAR
19961847f8eSopenharmony_ci     * @param { AsyncCallback<Calendar> } callback - the callback of getCalendar with default calendar instance
20061847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission denied.
20161847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
20261847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
20361847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
20461847f8eSopenharmony_ci     * @atomicservice
20561847f8eSopenharmony_ci     * @since 11
20661847f8eSopenharmony_ci     */
20761847f8eSopenharmony_ci    getCalendar(callback: AsyncCallback<Calendar>): void;
20861847f8eSopenharmony_ci
20961847f8eSopenharmony_ci    /**
21061847f8eSopenharmony_ci     * Get all calendar instance.
21161847f8eSopenharmony_ci     *
21261847f8eSopenharmony_ci     * @permission ohos.permission.READ_CALENDAR
21361847f8eSopenharmony_ci     * @returns { Promise<Calendar[]> } the promise returned by the function.
21461847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission denied.
21561847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: Incorrect parameter types.
21661847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
21761847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
21861847f8eSopenharmony_ci     * @since 10
21961847f8eSopenharmony_ci     */
22061847f8eSopenharmony_ci    getAllCalendars(): Promise<Calendar[]>;
22161847f8eSopenharmony_ci
22261847f8eSopenharmony_ci    /**
22361847f8eSopenharmony_ci     * Get all calendar instance.
22461847f8eSopenharmony_ci     *
22561847f8eSopenharmony_ci     * @permission ohos.permission.READ_CALENDAR
22661847f8eSopenharmony_ci     * @param {AsyncCallback<Calendar[]>} callback - the callback of getAllCalendars
22761847f8eSopenharmony_ci     * @throws { BusinessError } 201 - Permission denied.
22861847f8eSopenharmony_ci     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types.
22961847f8eSopenharmony_ci     * @throws { BusinessError } 801 - Capability not supported.
23061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
23161847f8eSopenharmony_ci     * @since 10
23261847f8eSopenharmony_ci     */
23361847f8eSopenharmony_ci    getAllCalendars(callback: AsyncCallback<Calendar[]>): void;
23461847f8eSopenharmony_ci
23561847f8eSopenharmony_ci    /**
23661847f8eSopenharmony_ci     * Create a single event,invoking this interface will open the event creation page.
23761847f8eSopenharmony_ci     *
23861847f8eSopenharmony_ci     * @param { Event } event - Indicates the information about a single event.
23961847f8eSopenharmony_ci     * @returns { Promise<number> } the promise with event id.
24061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
24161847f8eSopenharmony_ci     * @atomicservice
24261847f8eSopenharmony_ci     * @since 12
24361847f8eSopenharmony_ci     */
24461847f8eSopenharmony_ci    editEvent(event: Event): Promise<number>;
24561847f8eSopenharmony_ci  }
24661847f8eSopenharmony_ci
24761847f8eSopenharmony_ci  /**
24861847f8eSopenharmony_ci   * Describes a calendar instance.
24961847f8eSopenharmony_ci   * @typedef Calendar
25061847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
25161847f8eSopenharmony_ci   * @since 10
25261847f8eSopenharmony_ci   */
25361847f8eSopenharmony_ci  /**
25461847f8eSopenharmony_ci   * Describes a calendar instance.
25561847f8eSopenharmony_ci   * @typedef Calendar
25661847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
25761847f8eSopenharmony_ci   * @atomicservice
25861847f8eSopenharmony_ci   * @since 11
25961847f8eSopenharmony_ci   */
26061847f8eSopenharmony_ci  export interface Calendar {
26161847f8eSopenharmony_ci    /**
26261847f8eSopenharmony_ci     * Id of the calendar
26361847f8eSopenharmony_ci     * @type { number }
26461847f8eSopenharmony_ci     * @readonly
26561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
26661847f8eSopenharmony_ci     * @since 10
26761847f8eSopenharmony_ci     */
26861847f8eSopenharmony_ci    /**
26961847f8eSopenharmony_ci     * Id of the calendar
27061847f8eSopenharmony_ci     * @type { number }
27161847f8eSopenharmony_ci     * @readonly
27261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
27361847f8eSopenharmony_ci     * @atomicservice
27461847f8eSopenharmony_ci     * @since 11
27561847f8eSopenharmony_ci     */
27661847f8eSopenharmony_ci    readonly id: number
27761847f8eSopenharmony_ci
27861847f8eSopenharmony_ci    /**
27961847f8eSopenharmony_ci     * Add a single event.
28061847f8eSopenharmony_ci     * @param { Event } event - Indicates the information about a single event.
28161847f8eSopenharmony_ci     * @returns { Promise<number> } The event ID.
28261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
28361847f8eSopenharmony_ci     * @since 10
28461847f8eSopenharmony_ci     */
28561847f8eSopenharmony_ci    /**
28661847f8eSopenharmony_ci     * Add a single event.
28761847f8eSopenharmony_ci     * @param { Event } event - Indicates the information about a single event.
28861847f8eSopenharmony_ci     * @returns { Promise<number> } The event ID.
28961847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
29061847f8eSopenharmony_ci     * @atomicservice
29161847f8eSopenharmony_ci     * @since 11
29261847f8eSopenharmony_ci     */
29361847f8eSopenharmony_ci    addEvent(event: Event): Promise<number>;
29461847f8eSopenharmony_ci
29561847f8eSopenharmony_ci    /**
29661847f8eSopenharmony_ci     * Add a single event.
29761847f8eSopenharmony_ci     * @param { Event } event - a single event to add.
29861847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - callback of addEvent.
29961847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
30061847f8eSopenharmony_ci     * @since 10
30161847f8eSopenharmony_ci     */
30261847f8eSopenharmony_ci    /**
30361847f8eSopenharmony_ci     * Add a single event.
30461847f8eSopenharmony_ci     * @param { Event } event - a single event to add.
30561847f8eSopenharmony_ci     * @param { AsyncCallback<number> } callback - callback of addEvent.
30661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
30761847f8eSopenharmony_ci     * @atomicservice
30861847f8eSopenharmony_ci     * @since 11
30961847f8eSopenharmony_ci     */
31061847f8eSopenharmony_ci    addEvent(event: Event, callback: AsyncCallback<number>): void;
31161847f8eSopenharmony_ci
31261847f8eSopenharmony_ci    /**
31361847f8eSopenharmony_ci     * Add multiple events.
31461847f8eSopenharmony_ci     * @param { Event[] } events - multiple events to add.
31561847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by function.
31661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
31761847f8eSopenharmony_ci     * @since 10
31861847f8eSopenharmony_ci     */
31961847f8eSopenharmony_ci    addEvents(events: Event[]): Promise<void>;
32061847f8eSopenharmony_ci
32161847f8eSopenharmony_ci    /**
32261847f8eSopenharmony_ci     * Add multiple events.
32361847f8eSopenharmony_ci     * @param { Event[] } events - Indicates the information about multiple events.
32461847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of addEvents
32561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
32661847f8eSopenharmony_ci     * @since 10
32761847f8eSopenharmony_ci     */
32861847f8eSopenharmony_ci    addEvents(events: Event[], callback: AsyncCallback<void>): void;
32961847f8eSopenharmony_ci
33061847f8eSopenharmony_ci    /**
33161847f8eSopenharmony_ci     * Delete a single event.
33261847f8eSopenharmony_ci     * @param { number } id - Indicates the ID of an event.
33361847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by function.
33461847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
33561847f8eSopenharmony_ci     * @since 10
33661847f8eSopenharmony_ci     */
33761847f8eSopenharmony_ci    deleteEvent(id: number): Promise<void>;
33861847f8eSopenharmony_ci
33961847f8eSopenharmony_ci    /**
34061847f8eSopenharmony_ci     * Delete a single event.
34161847f8eSopenharmony_ci     * @param { number } id - Indicates the ID of an event.
34261847f8eSopenharmony_ci     * @param {AsyncCallback<void>} callback - The callback of deleteEvent.
34361847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
34461847f8eSopenharmony_ci     * @since 10
34561847f8eSopenharmony_ci     */
34661847f8eSopenharmony_ci    deleteEvent(id: number, callback: AsyncCallback<void>): void;
34761847f8eSopenharmony_ci
34861847f8eSopenharmony_ci    /**
34961847f8eSopenharmony_ci     * Delete multiple events.
35061847f8eSopenharmony_ci     * @param { number[] } ids - The id array of multiple events.
35161847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by function.
35261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
35361847f8eSopenharmony_ci     * @since 10
35461847f8eSopenharmony_ci     */
35561847f8eSopenharmony_ci    deleteEvents(ids: number[]): Promise<void>;
35661847f8eSopenharmony_ci
35761847f8eSopenharmony_ci    /**
35861847f8eSopenharmony_ci     * Delete multiple events.
35961847f8eSopenharmony_ci     * @param { number[] } ids - Indicates the IDs of multiple events.
36061847f8eSopenharmony_ci     * @param {AsyncCallback<void>} callback - The callback of deleteEvents.
36161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
36261847f8eSopenharmony_ci     * @since 10
36361847f8eSopenharmony_ci     */
36461847f8eSopenharmony_ci    deleteEvents(ids: number[], callback: AsyncCallback<void>): void;
36561847f8eSopenharmony_ci
36661847f8eSopenharmony_ci    /**
36761847f8eSopenharmony_ci     * Update a single event.
36861847f8eSopenharmony_ci     * @param { Event } event - Indicates the information about a single event.
36961847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by function.
37061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
37161847f8eSopenharmony_ci     * @since 10
37261847f8eSopenharmony_ci     */
37361847f8eSopenharmony_ci    updateEvent(event: Event): Promise<void>;
37461847f8eSopenharmony_ci
37561847f8eSopenharmony_ci    /**
37661847f8eSopenharmony_ci     * Update a single event.
37761847f8eSopenharmony_ci     * @param { Event } event - Indicates the information about a single event.
37861847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - The callback of updateEvent.
37961847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
38061847f8eSopenharmony_ci     * @since 10
38161847f8eSopenharmony_ci     */
38261847f8eSopenharmony_ci    updateEvent(event: Event, callback: AsyncCallback<void>): void;
38361847f8eSopenharmony_ci
38461847f8eSopenharmony_ci    /**
38561847f8eSopenharmony_ci     * Query events based on filter conditions.
38661847f8eSopenharmony_ci     * @param { EventFilter } eventFilter - Indicates the filtering conditions of events.
38761847f8eSopenharmony_ci     * @param { (keyof Event)[] } eventKey - Expected column to be returned.
38861847f8eSopenharmony_ci     * @returns { Promise<Event[]> } Information about events that match the filter conditions.
38961847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
39061847f8eSopenharmony_ci     * @since 10
39161847f8eSopenharmony_ci     */
39261847f8eSopenharmony_ci    getEvents(eventFilter?: EventFilter, eventKey?: (keyof Event)[]): Promise<Event[]>;
39361847f8eSopenharmony_ci
39461847f8eSopenharmony_ci    /**
39561847f8eSopenharmony_ci     * Query events based on filter conditions.
39661847f8eSopenharmony_ci     * @param { EventFilter } eventFilter - Indicates the filtering conditions of events.
39761847f8eSopenharmony_ci     * @param { (keyof Event)[] } eventKey - Expected column to be returned.
39861847f8eSopenharmony_ci     * @param { AsyncCallback<Event[]> } callback - The callback of getEvents.
39961847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
40061847f8eSopenharmony_ci     * @since 10
40161847f8eSopenharmony_ci     */
40261847f8eSopenharmony_ci    getEvents(eventFilter: EventFilter, eventKey: (keyof Event)[], callback: AsyncCallback<Event[]>):void;
40361847f8eSopenharmony_ci
40461847f8eSopenharmony_ci    /**
40561847f8eSopenharmony_ci     * Query all events with all column from current calendar instance.
40661847f8eSopenharmony_ci     * @param { AsyncCallback<Event[]> } callback - The callback of getEvents with all events.
40761847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
40861847f8eSopenharmony_ci     * @since 10
40961847f8eSopenharmony_ci     */
41061847f8eSopenharmony_ci    getEvents(callback: AsyncCallback<Event[]>):void;
41161847f8eSopenharmony_ci
41261847f8eSopenharmony_ci    /**
41361847f8eSopenharmony_ci     * Get calendar configure.
41461847f8eSopenharmony_ci     * @returns { CalendarConfig } configure of current calendar.
41561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
41661847f8eSopenharmony_ci     * @since 10
41761847f8eSopenharmony_ci     */
41861847f8eSopenharmony_ci    getConfig(): CalendarConfig;
41961847f8eSopenharmony_ci
42061847f8eSopenharmony_ci    /**
42161847f8eSopenharmony_ci     * Set calendar configure.
42261847f8eSopenharmony_ci     * @param { CalendarConfig } config - calendar config to set
42361847f8eSopenharmony_ci     * @returns { Promise<void> } The promise returned by function.
42461847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
42561847f8eSopenharmony_ci     * @since 10
42661847f8eSopenharmony_ci     */
42761847f8eSopenharmony_ci    setConfig(config: CalendarConfig): Promise<void>;
42861847f8eSopenharmony_ci
42961847f8eSopenharmony_ci    /**
43061847f8eSopenharmony_ci     * Set calendar configure.
43161847f8eSopenharmony_ci     * @param { CalendarConfig } config - calendar config to set
43261847f8eSopenharmony_ci     * @param { AsyncCallback<void> } callback - callback of setConfig
43361847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
43461847f8eSopenharmony_ci     * @since 10
43561847f8eSopenharmony_ci     */
43661847f8eSopenharmony_ci    setConfig(config: CalendarConfig, callback: AsyncCallback<void>): void;
43761847f8eSopenharmony_ci
43861847f8eSopenharmony_ci    /**
43961847f8eSopenharmony_ci     * Get calendar account.
44061847f8eSopenharmony_ci     * @returns { CalendarAccount } calendar account of current calendar.
44161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
44261847f8eSopenharmony_ci     * @since 10
44361847f8eSopenharmony_ci     */
44461847f8eSopenharmony_ci    getAccount(): CalendarAccount;
44561847f8eSopenharmony_ci  }
44661847f8eSopenharmony_ci
44761847f8eSopenharmony_ci  /**
44861847f8eSopenharmony_ci   * Describes a calendar account.
44961847f8eSopenharmony_ci   * @typedef CalendarAccount
45061847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
45161847f8eSopenharmony_ci   * @since 10
45261847f8eSopenharmony_ci   */
45361847f8eSopenharmony_ci  /**
45461847f8eSopenharmony_ci   * Describes a calendar account.
45561847f8eSopenharmony_ci   * @typedef CalendarAccount
45661847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
45761847f8eSopenharmony_ci   * @atomicservice
45861847f8eSopenharmony_ci   * @since 11
45961847f8eSopenharmony_ci   */
46061847f8eSopenharmony_ci  interface CalendarAccount {
46161847f8eSopenharmony_ci    /**
46261847f8eSopenharmony_ci     * Name of the calendar
46361847f8eSopenharmony_ci     * @type { string }
46461847f8eSopenharmony_ci     * @readonly
46561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
46661847f8eSopenharmony_ci     * @since 10
46761847f8eSopenharmony_ci     */
46861847f8eSopenharmony_ci    /**
46961847f8eSopenharmony_ci     * Name of the calendar
47061847f8eSopenharmony_ci     * @type { string }
47161847f8eSopenharmony_ci     * @readonly
47261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
47361847f8eSopenharmony_ci     * @atomicservice
47461847f8eSopenharmony_ci     * @since 11
47561847f8eSopenharmony_ci     */
47661847f8eSopenharmony_ci    readonly name: string;
47761847f8eSopenharmony_ci
47861847f8eSopenharmony_ci    /**
47961847f8eSopenharmony_ci     * Type of the calendar
48061847f8eSopenharmony_ci     * @type { CalendarType }
48161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
48261847f8eSopenharmony_ci     * @since 10
48361847f8eSopenharmony_ci     */
48461847f8eSopenharmony_ci    /**
48561847f8eSopenharmony_ci     * Type of the calendar
48661847f8eSopenharmony_ci     * @type { CalendarType }
48761847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
48861847f8eSopenharmony_ci     * @atomicservice
48961847f8eSopenharmony_ci     * @since 11
49061847f8eSopenharmony_ci     */
49161847f8eSopenharmony_ci    type: CalendarType;
49261847f8eSopenharmony_ci
49361847f8eSopenharmony_ci    /**
49461847f8eSopenharmony_ci     * DisplayName of the calendar
49561847f8eSopenharmony_ci     * @type { ?string }
49661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
49761847f8eSopenharmony_ci     * @since 10
49861847f8eSopenharmony_ci     */
49961847f8eSopenharmony_ci    /**
50061847f8eSopenharmony_ci     * DisplayName of the calendar
50161847f8eSopenharmony_ci     * @type { ?string }
50261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
50361847f8eSopenharmony_ci     * @atomicservice
50461847f8eSopenharmony_ci     * @since 11
50561847f8eSopenharmony_ci     */
50661847f8eSopenharmony_ci    displayName?: string
50761847f8eSopenharmony_ci  }
50861847f8eSopenharmony_ci
50961847f8eSopenharmony_ci  /**
51061847f8eSopenharmony_ci   * Describes a calendar configuration.
51161847f8eSopenharmony_ci   * @typedef CalendarConfig
51261847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
51361847f8eSopenharmony_ci   * @since 10
51461847f8eSopenharmony_ci   */
51561847f8eSopenharmony_ci  interface CalendarConfig {
51661847f8eSopenharmony_ci    /**
51761847f8eSopenharmony_ci     * Whether the calendar provides a reminder
51861847f8eSopenharmony_ci     * @type { ?boolean }
51961847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
52061847f8eSopenharmony_ci     * @since 10
52161847f8eSopenharmony_ci     */
52261847f8eSopenharmony_ci    enableReminder?: boolean;
52361847f8eSopenharmony_ci
52461847f8eSopenharmony_ci    /**
52561847f8eSopenharmony_ci     * Color of the calendar
52661847f8eSopenharmony_ci     * @type { ?(number | string) }
52761847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
52861847f8eSopenharmony_ci     * @since 10
52961847f8eSopenharmony_ci     */
53061847f8eSopenharmony_ci    color?: number | string;
53161847f8eSopenharmony_ci  }
53261847f8eSopenharmony_ci
53361847f8eSopenharmony_ci  /**
53461847f8eSopenharmony_ci   * Describes an event information.
53561847f8eSopenharmony_ci   * @typedef Event
53661847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
53761847f8eSopenharmony_ci   * @since 10
53861847f8eSopenharmony_ci   */
53961847f8eSopenharmony_ci  /**
54061847f8eSopenharmony_ci   * Describes an event information.
54161847f8eSopenharmony_ci   * @typedef Event
54261847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
54361847f8eSopenharmony_ci   * @atomicservice
54461847f8eSopenharmony_ci   * @since 11
54561847f8eSopenharmony_ci   */
54661847f8eSopenharmony_ci  interface Event {
54761847f8eSopenharmony_ci    /**
54861847f8eSopenharmony_ci     * Id of the event
54961847f8eSopenharmony_ci     * @type { ?number }
55061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
55161847f8eSopenharmony_ci     * @since 10
55261847f8eSopenharmony_ci     */
55361847f8eSopenharmony_ci    /**
55461847f8eSopenharmony_ci     * Id of the event
55561847f8eSopenharmony_ci     * @type { ?number }
55661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
55761847f8eSopenharmony_ci     * @atomicservice
55861847f8eSopenharmony_ci     * @since 11
55961847f8eSopenharmony_ci     */
56061847f8eSopenharmony_ci    id?: number;
56161847f8eSopenharmony_ci
56261847f8eSopenharmony_ci    /**
56361847f8eSopenharmony_ci     * Type of the event
56461847f8eSopenharmony_ci     * @type { EventType }
56561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
56661847f8eSopenharmony_ci     * @since 10
56761847f8eSopenharmony_ci     */
56861847f8eSopenharmony_ci    /**
56961847f8eSopenharmony_ci     * Type of the event
57061847f8eSopenharmony_ci     * @type { EventType }
57161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
57261847f8eSopenharmony_ci     * @atomicservice
57361847f8eSopenharmony_ci     * @since 11
57461847f8eSopenharmony_ci     */
57561847f8eSopenharmony_ci    type: EventType;
57661847f8eSopenharmony_ci
57761847f8eSopenharmony_ci    /**
57861847f8eSopenharmony_ci     * Title of the event
57961847f8eSopenharmony_ci     * @type { ?string }
58061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
58161847f8eSopenharmony_ci     * @since 10
58261847f8eSopenharmony_ci     */
58361847f8eSopenharmony_ci    /**
58461847f8eSopenharmony_ci     * Title of the event
58561847f8eSopenharmony_ci     * @type { ?string }
58661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
58761847f8eSopenharmony_ci     * @atomicservice
58861847f8eSopenharmony_ci     * @since 11
58961847f8eSopenharmony_ci     */
59061847f8eSopenharmony_ci    title?: string;
59161847f8eSopenharmony_ci
59261847f8eSopenharmony_ci    /**
59361847f8eSopenharmony_ci     * Location of the event
59461847f8eSopenharmony_ci     * @type { ?Location }
59561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
59661847f8eSopenharmony_ci     * @since 10
59761847f8eSopenharmony_ci     */
59861847f8eSopenharmony_ci    /**
59961847f8eSopenharmony_ci     * Location of the event
60061847f8eSopenharmony_ci     * @type { ?Location }
60161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
60261847f8eSopenharmony_ci     * @atomicservice
60361847f8eSopenharmony_ci     * @since 11
60461847f8eSopenharmony_ci     */
60561847f8eSopenharmony_ci    location?: Location;
60661847f8eSopenharmony_ci
60761847f8eSopenharmony_ci    /**
60861847f8eSopenharmony_ci     * start time of the event
60961847f8eSopenharmony_ci     * @type { number }
61061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
61161847f8eSopenharmony_ci     * @since 10
61261847f8eSopenharmony_ci     */
61361847f8eSopenharmony_ci    /**
61461847f8eSopenharmony_ci     * start time of the event
61561847f8eSopenharmony_ci     * @type { number }
61661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
61761847f8eSopenharmony_ci     * @atomicservice
61861847f8eSopenharmony_ci     * @since 11
61961847f8eSopenharmony_ci     */
62061847f8eSopenharmony_ci    startTime: number;
62161847f8eSopenharmony_ci
62261847f8eSopenharmony_ci    /**
62361847f8eSopenharmony_ci     * end time of the event
62461847f8eSopenharmony_ci     * @type { number }
62561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
62661847f8eSopenharmony_ci     * @since 10
62761847f8eSopenharmony_ci     */
62861847f8eSopenharmony_ci    /**
62961847f8eSopenharmony_ci     * end time of the event
63061847f8eSopenharmony_ci     * @type { number }
63161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
63261847f8eSopenharmony_ci     * @atomicservice
63361847f8eSopenharmony_ci     * @since 11
63461847f8eSopenharmony_ci     */
63561847f8eSopenharmony_ci    endTime: number;
63661847f8eSopenharmony_ci
63761847f8eSopenharmony_ci    /**
63861847f8eSopenharmony_ci     * Whether the event is allDay
63961847f8eSopenharmony_ci     * @type { ?boolean }
64061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
64161847f8eSopenharmony_ci     * @since 10
64261847f8eSopenharmony_ci     */
64361847f8eSopenharmony_ci    /**
64461847f8eSopenharmony_ci     * Whether the event is allDay
64561847f8eSopenharmony_ci     * @type { ?boolean }
64661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
64761847f8eSopenharmony_ci     * @atomicservice
64861847f8eSopenharmony_ci     * @since 11
64961847f8eSopenharmony_ci     */
65061847f8eSopenharmony_ci    isAllDay?: boolean;
65161847f8eSopenharmony_ci
65261847f8eSopenharmony_ci    /**
65361847f8eSopenharmony_ci     * Attendees of the event
65461847f8eSopenharmony_ci     * @type { ?Attendee[] }
65561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
65661847f8eSopenharmony_ci     * @since 10
65761847f8eSopenharmony_ci     */
65861847f8eSopenharmony_ci    /**
65961847f8eSopenharmony_ci     * Attendees of the event
66061847f8eSopenharmony_ci     * @type { ?Attendee[] }
66161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
66261847f8eSopenharmony_ci     * @atomicservice
66361847f8eSopenharmony_ci     * @since 11
66461847f8eSopenharmony_ci     */
66561847f8eSopenharmony_ci    attendee?: Attendee[];
66661847f8eSopenharmony_ci
66761847f8eSopenharmony_ci    /**
66861847f8eSopenharmony_ci     * TimeZone of the event
66961847f8eSopenharmony_ci     * @type { ?string }
67061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
67161847f8eSopenharmony_ci     * @since 10
67261847f8eSopenharmony_ci     */
67361847f8eSopenharmony_ci    /**
67461847f8eSopenharmony_ci     * TimeZone of the event
67561847f8eSopenharmony_ci     * @type { ?string }
67661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
67761847f8eSopenharmony_ci     * @atomicservice
67861847f8eSopenharmony_ci     * @since 11
67961847f8eSopenharmony_ci     */
68061847f8eSopenharmony_ci    timeZone?: string;
68161847f8eSopenharmony_ci
68261847f8eSopenharmony_ci    /**
68361847f8eSopenharmony_ci     * Reminder time of the event
68461847f8eSopenharmony_ci     * @type { ?number[] }
68561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
68661847f8eSopenharmony_ci     * @since 10
68761847f8eSopenharmony_ci     */
68861847f8eSopenharmony_ci    /**
68961847f8eSopenharmony_ci     * Reminder time of the event
69061847f8eSopenharmony_ci     * @type { ?number[] }
69161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
69261847f8eSopenharmony_ci     * @atomicservice
69361847f8eSopenharmony_ci     * @since 11
69461847f8eSopenharmony_ci     */
69561847f8eSopenharmony_ci    reminderTime?: number[];
69661847f8eSopenharmony_ci
69761847f8eSopenharmony_ci    /**
69861847f8eSopenharmony_ci     * RecurrenceRule of the event
69961847f8eSopenharmony_ci     * @type { ?RecurrenceRule }
70061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
70161847f8eSopenharmony_ci     * @since 10
70261847f8eSopenharmony_ci     */
70361847f8eSopenharmony_ci    /**
70461847f8eSopenharmony_ci     * RecurrenceRule of the event
70561847f8eSopenharmony_ci     * @type { ?RecurrenceRule }
70661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
70761847f8eSopenharmony_ci     * @atomicservice
70861847f8eSopenharmony_ci     * @since 11
70961847f8eSopenharmony_ci     */
71061847f8eSopenharmony_ci    recurrenceRule?: RecurrenceRule;
71161847f8eSopenharmony_ci
71261847f8eSopenharmony_ci    /**
71361847f8eSopenharmony_ci     * Description of the event
71461847f8eSopenharmony_ci     * @type { ?string }
71561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
71661847f8eSopenharmony_ci     * @since 10
71761847f8eSopenharmony_ci     */
71861847f8eSopenharmony_ci    /**
71961847f8eSopenharmony_ci     * Description of the event
72061847f8eSopenharmony_ci     * @type { ?string }
72161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
72261847f8eSopenharmony_ci     * @atomicservice
72361847f8eSopenharmony_ci     * @since 11
72461847f8eSopenharmony_ci     */
72561847f8eSopenharmony_ci    description?: string;
72661847f8eSopenharmony_ci
72761847f8eSopenharmony_ci    /**
72861847f8eSopenharmony_ci     * Service of the event
72961847f8eSopenharmony_ci     * @type { ?EventService }
73061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
73161847f8eSopenharmony_ci     * @since 10
73261847f8eSopenharmony_ci     */
73361847f8eSopenharmony_ci    /**
73461847f8eSopenharmony_ci     * Service of the event
73561847f8eSopenharmony_ci     * @type { ?EventService }
73661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
73761847f8eSopenharmony_ci     * @atomicservice
73861847f8eSopenharmony_ci     * @since 11
73961847f8eSopenharmony_ci     */
74061847f8eSopenharmony_ci    service?: EventService;
74161847f8eSopenharmony_ci
74261847f8eSopenharmony_ci    /**
74361847f8eSopenharmony_ci     * Unique identifier of the event
74461847f8eSopenharmony_ci     * @type { ?string }
74561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
74661847f8eSopenharmony_ci     * @atomicservice
74761847f8eSopenharmony_ci     * @since 12
74861847f8eSopenharmony_ci     */
74961847f8eSopenharmony_ci    identifier?: string;
75061847f8eSopenharmony_ci
75161847f8eSopenharmony_ci    /**
75261847f8eSopenharmony_ci     * Whether the event is lunar.
75361847f8eSopenharmony_ci     * @type { ?boolean }
75461847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
75561847f8eSopenharmony_ci     * @atomicservice
75661847f8eSopenharmony_ci     * @since 12
75761847f8eSopenharmony_ci     */
75861847f8eSopenharmony_ci    isLunar?: boolean;  
75961847f8eSopenharmony_ci  }
76061847f8eSopenharmony_ci
76161847f8eSopenharmony_ci  /**
76261847f8eSopenharmony_ci   * Enum for all calendar type.
76361847f8eSopenharmony_ci   * @enum { string }
76461847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
76561847f8eSopenharmony_ci   * @since 10
76661847f8eSopenharmony_ci   */
76761847f8eSopenharmony_ci  /**
76861847f8eSopenharmony_ci   * Enum for all calendar type.
76961847f8eSopenharmony_ci   * @enum { string }
77061847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
77161847f8eSopenharmony_ci   * @atomicservice
77261847f8eSopenharmony_ci   * @since 11
77361847f8eSopenharmony_ci   */
77461847f8eSopenharmony_ci  enum CalendarType {
77561847f8eSopenharmony_ci    /**
77661847f8eSopenharmony_ci     * Local calendar
77761847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
77861847f8eSopenharmony_ci     * @since 10
77961847f8eSopenharmony_ci     */
78061847f8eSopenharmony_ci    /**
78161847f8eSopenharmony_ci     * Local calendar
78261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
78361847f8eSopenharmony_ci     * @atomicservice
78461847f8eSopenharmony_ci     * @since 11
78561847f8eSopenharmony_ci     */
78661847f8eSopenharmony_ci    LOCAL = 'local',
78761847f8eSopenharmony_ci
78861847f8eSopenharmony_ci    /**
78961847f8eSopenharmony_ci     * Email calendar
79061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
79161847f8eSopenharmony_ci     * @since 10
79261847f8eSopenharmony_ci     */
79361847f8eSopenharmony_ci    /**
79461847f8eSopenharmony_ci     * Email calendar
79561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
79661847f8eSopenharmony_ci     * @atomicservice
79761847f8eSopenharmony_ci     * @since 11
79861847f8eSopenharmony_ci     */
79961847f8eSopenharmony_ci    EMAIL = 'email',
80061847f8eSopenharmony_ci
80161847f8eSopenharmony_ci    /**
80261847f8eSopenharmony_ci     * Birthday calendar
80361847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
80461847f8eSopenharmony_ci     * @since 10
80561847f8eSopenharmony_ci     */
80661847f8eSopenharmony_ci    /**
80761847f8eSopenharmony_ci     * Birthday calendar
80861847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
80961847f8eSopenharmony_ci     * @atomicservice
81061847f8eSopenharmony_ci     * @since 11
81161847f8eSopenharmony_ci     */
81261847f8eSopenharmony_ci    BIRTHDAY = 'birthday',
81361847f8eSopenharmony_ci
81461847f8eSopenharmony_ci    /**
81561847f8eSopenharmony_ci     * CalDAV calendar
81661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
81761847f8eSopenharmony_ci     * @since 10
81861847f8eSopenharmony_ci     */
81961847f8eSopenharmony_ci    /**
82061847f8eSopenharmony_ci     * CalDAV calendar
82161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
82261847f8eSopenharmony_ci     * @atomicservice
82361847f8eSopenharmony_ci     * @since 11
82461847f8eSopenharmony_ci     */
82561847f8eSopenharmony_ci    CALDAV = 'caldav',
82661847f8eSopenharmony_ci
82761847f8eSopenharmony_ci    /**
82861847f8eSopenharmony_ci     * Subscribed calendar
82961847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
83061847f8eSopenharmony_ci     * @since 10
83161847f8eSopenharmony_ci     */
83261847f8eSopenharmony_ci    /**
83361847f8eSopenharmony_ci     * Subscribed calendar
83461847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
83561847f8eSopenharmony_ci     * @atomicservice
83661847f8eSopenharmony_ci     * @since 11
83761847f8eSopenharmony_ci     */
83861847f8eSopenharmony_ci    SUBSCRIBED = 'subscribed'
83961847f8eSopenharmony_ci  }
84061847f8eSopenharmony_ci
84161847f8eSopenharmony_ci  /**
84261847f8eSopenharmony_ci   * Location of an event.
84361847f8eSopenharmony_ci   * @typedef Location
84461847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
84561847f8eSopenharmony_ci   * @since 10
84661847f8eSopenharmony_ci   */
84761847f8eSopenharmony_ci  /**
84861847f8eSopenharmony_ci   * Location of an event.
84961847f8eSopenharmony_ci   * @typedef Location
85061847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
85161847f8eSopenharmony_ci   * @atomicservice
85261847f8eSopenharmony_ci   * @since 11
85361847f8eSopenharmony_ci   */
85461847f8eSopenharmony_ci  interface Location {
85561847f8eSopenharmony_ci    /**
85661847f8eSopenharmony_ci     * Location of the event
85761847f8eSopenharmony_ci     * @type { ?string }
85861847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
85961847f8eSopenharmony_ci     * @since 10
86061847f8eSopenharmony_ci     */
86161847f8eSopenharmony_ci    /**
86261847f8eSopenharmony_ci     * Location of the event
86361847f8eSopenharmony_ci     * @type { ?string }
86461847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
86561847f8eSopenharmony_ci     * @atomicservice
86661847f8eSopenharmony_ci     * @since 11
86761847f8eSopenharmony_ci     */
86861847f8eSopenharmony_ci    location?: string;
86961847f8eSopenharmony_ci
87061847f8eSopenharmony_ci    /**
87161847f8eSopenharmony_ci     * Longitude of the location
87261847f8eSopenharmony_ci     * @type { ?number }
87361847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
87461847f8eSopenharmony_ci     * @since 10
87561847f8eSopenharmony_ci     */
87661847f8eSopenharmony_ci    /**
87761847f8eSopenharmony_ci     * Longitude of the location
87861847f8eSopenharmony_ci     * @type { ?number }
87961847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
88061847f8eSopenharmony_ci     * @atomicservice
88161847f8eSopenharmony_ci     * @since 11
88261847f8eSopenharmony_ci     */
88361847f8eSopenharmony_ci    longitude?: number;
88461847f8eSopenharmony_ci
88561847f8eSopenharmony_ci    /**
88661847f8eSopenharmony_ci     * Latitude of the location
88761847f8eSopenharmony_ci     * @type { ?number }
88861847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
88961847f8eSopenharmony_ci     * @since 10
89061847f8eSopenharmony_ci     */
89161847f8eSopenharmony_ci    /**
89261847f8eSopenharmony_ci     * Latitude of the location
89361847f8eSopenharmony_ci     * @type { ?number }
89461847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
89561847f8eSopenharmony_ci     * @atomicservice
89661847f8eSopenharmony_ci     * @since 11
89761847f8eSopenharmony_ci     */
89861847f8eSopenharmony_ci    latitude?: number;
89961847f8eSopenharmony_ci  }
90061847f8eSopenharmony_ci
90161847f8eSopenharmony_ci  /**
90261847f8eSopenharmony_ci   * Provides the abilities to retrive event filter.
90361847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
90461847f8eSopenharmony_ci   * @since 10
90561847f8eSopenharmony_ci   */
90661847f8eSopenharmony_ci  class EventFilter {
90761847f8eSopenharmony_ci    /**
90861847f8eSopenharmony_ci     * Filter events by event id.
90961847f8eSopenharmony_ci     * @param {number[]} ids id array to retrieve
91061847f8eSopenharmony_ci     * @returns { EventFilter } Returns the EventFilter with ids.
91161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
91261847f8eSopenharmony_ci     * @since 10
91361847f8eSopenharmony_ci     */
91461847f8eSopenharmony_ci    static filterById(ids: number[]): EventFilter;
91561847f8eSopenharmony_ci
91661847f8eSopenharmony_ci    /**
91761847f8eSopenharmony_ci     * Filter events by event start time and end time.
91861847f8eSopenharmony_ci     * @param { number } start - start time of query range
91961847f8eSopenharmony_ci     * @param { number } end - end time of query range
92061847f8eSopenharmony_ci     * @returns { EventFilter } Returns the EventFilter with time range.
92161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
92261847f8eSopenharmony_ci     * @since 10
92361847f8eSopenharmony_ci     */
92461847f8eSopenharmony_ci    static filterByTime(start: number, end: number): EventFilter;
92561847f8eSopenharmony_ci
92661847f8eSopenharmony_ci    /**
92761847f8eSopenharmony_ci     * Filter events by event title.
92861847f8eSopenharmony_ci     * @param { string } title - event title to query
92961847f8eSopenharmony_ci     * @returns {EventFilter } Returns the EventFilter with title.
93061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
93161847f8eSopenharmony_ci     * @since 10
93261847f8eSopenharmony_ci     */
93361847f8eSopenharmony_ci    static filterByTitle(title: string): EventFilter;
93461847f8eSopenharmony_ci  }
93561847f8eSopenharmony_ci
93661847f8eSopenharmony_ci  /**
93761847f8eSopenharmony_ci   * Enum for supported events type.
93861847f8eSopenharmony_ci   * @enum { number }
93961847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
94061847f8eSopenharmony_ci   * @since 10
94161847f8eSopenharmony_ci   */
94261847f8eSopenharmony_ci  /**
94361847f8eSopenharmony_ci   * Enum for supported events type.
94461847f8eSopenharmony_ci   * @enum { number }
94561847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
94661847f8eSopenharmony_ci   * @atomicservice
94761847f8eSopenharmony_ci   * @since 11
94861847f8eSopenharmony_ci   */
94961847f8eSopenharmony_ci  enum EventType {
95061847f8eSopenharmony_ci    /**
95161847f8eSopenharmony_ci     * normal event.
95261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
95361847f8eSopenharmony_ci     * @since 10
95461847f8eSopenharmony_ci     */
95561847f8eSopenharmony_ci    /**
95661847f8eSopenharmony_ci     * normal event.
95761847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
95861847f8eSopenharmony_ci     * @atomicservice
95961847f8eSopenharmony_ci     * @since 11
96061847f8eSopenharmony_ci     */
96161847f8eSopenharmony_ci    NORMAL = 0,
96261847f8eSopenharmony_ci
96361847f8eSopenharmony_ci    /**
96461847f8eSopenharmony_ci     * important event.
96561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
96661847f8eSopenharmony_ci     * @since 10
96761847f8eSopenharmony_ci     */
96861847f8eSopenharmony_ci    /**
96961847f8eSopenharmony_ci     * important event.
97061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
97161847f8eSopenharmony_ci     * @atomicservice
97261847f8eSopenharmony_ci     * @since 11
97361847f8eSopenharmony_ci     */
97461847f8eSopenharmony_ci    IMPORTANT = 1,
97561847f8eSopenharmony_ci  }
97661847f8eSopenharmony_ci
97761847f8eSopenharmony_ci  /**
97861847f8eSopenharmony_ci   * Defines the recurrence rule of event
97961847f8eSopenharmony_ci   * @typedef RecurrenceRule
98061847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
98161847f8eSopenharmony_ci   * @since 10
98261847f8eSopenharmony_ci   */
98361847f8eSopenharmony_ci  /**
98461847f8eSopenharmony_ci   * Defines the recurrence rule of event
98561847f8eSopenharmony_ci   * @typedef RecurrenceRule
98661847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
98761847f8eSopenharmony_ci   * @atomicservice
98861847f8eSopenharmony_ci   * @since 11
98961847f8eSopenharmony_ci   */
99061847f8eSopenharmony_ci  export interface RecurrenceRule {
99161847f8eSopenharmony_ci    /**
99261847f8eSopenharmony_ci     * RecurrenceFrequency of recurrence event.
99361847f8eSopenharmony_ci     * @type { RecurrenceFrequency }
99461847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
99561847f8eSopenharmony_ci     * @since 10
99661847f8eSopenharmony_ci     */
99761847f8eSopenharmony_ci    /**
99861847f8eSopenharmony_ci     * RecurrenceFrequency of recurrence event.
99961847f8eSopenharmony_ci     * @type { RecurrenceFrequency }
100061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
100161847f8eSopenharmony_ci     * @atomicservice
100261847f8eSopenharmony_ci     * @since 11
100361847f8eSopenharmony_ci     */
100461847f8eSopenharmony_ci    recurrenceFrequency: RecurrenceFrequency;
100561847f8eSopenharmony_ci
100661847f8eSopenharmony_ci    /**
100761847f8eSopenharmony_ci     * Expiration time of recurrence event.
100861847f8eSopenharmony_ci     * @type { ?number }
100961847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
101061847f8eSopenharmony_ci     * @since 10
101161847f8eSopenharmony_ci     */
101261847f8eSopenharmony_ci    /**
101361847f8eSopenharmony_ci     * Expiration time of recurrence event.
101461847f8eSopenharmony_ci     * @type { ?number }
101561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
101661847f8eSopenharmony_ci     * @atomicservice
101761847f8eSopenharmony_ci     * @since 11
101861847f8eSopenharmony_ci     */
101961847f8eSopenharmony_ci    expire?: number;
102061847f8eSopenharmony_ci
102161847f8eSopenharmony_ci    /**
102261847f8eSopenharmony_ci     * Repetition count of recurrence event.
102361847f8eSopenharmony_ci     * @type { ?number }
102461847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
102561847f8eSopenharmony_ci     * @atomicservice
102661847f8eSopenharmony_ci     * @since 12
102761847f8eSopenharmony_ci     */
102861847f8eSopenharmony_ci    count?: number;
102961847f8eSopenharmony_ci
103061847f8eSopenharmony_ci    /**
103161847f8eSopenharmony_ci     * Repeat interval of recurrence event.
103261847f8eSopenharmony_ci     * @type { ?number }
103361847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
103461847f8eSopenharmony_ci     * @atomicservice
103561847f8eSopenharmony_ci     * @since 12
103661847f8eSopenharmony_ci     */
103761847f8eSopenharmony_ci    interval?: number;
103861847f8eSopenharmony_ci
103961847f8eSopenharmony_ci    /**
104061847f8eSopenharmony_ci     * Excluded dates of recurrence event.
104161847f8eSopenharmony_ci     * @type { ?number[] }
104261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
104361847f8eSopenharmony_ci     * @atomicservice
104461847f8eSopenharmony_ci     * @since 12
104561847f8eSopenharmony_ci     */
104661847f8eSopenharmony_ci    excludedDates?: number[];
104761847f8eSopenharmony_ci
104861847f8eSopenharmony_ci    /**
104961847f8eSopenharmony_ci     * The days of the week associated with the recurrence event.
105061847f8eSopenharmony_ci     * @type { ?number[] }
105161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
105261847f8eSopenharmony_ci     * @atomicservice
105361847f8eSopenharmony_ci     * @since 12
105461847f8eSopenharmony_ci     */
105561847f8eSopenharmony_ci    daysOfWeek?: number[];
105661847f8eSopenharmony_ci
105761847f8eSopenharmony_ci    /**
105861847f8eSopenharmony_ci     * The days of the month associated with the recurrence event.
105961847f8eSopenharmony_ci     * @type { ?number[] }
106061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
106161847f8eSopenharmony_ci     * @atomicservice
106261847f8eSopenharmony_ci     * @since 12
106361847f8eSopenharmony_ci     */
106461847f8eSopenharmony_ci    daysOfMonth?: number[];
106561847f8eSopenharmony_ci
106661847f8eSopenharmony_ci    /**
106761847f8eSopenharmony_ci     * The days of the year associated with the recurrence event.
106861847f8eSopenharmony_ci     * @type { ?number[] }
106961847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
107061847f8eSopenharmony_ci     * @atomicservice
107161847f8eSopenharmony_ci     * @since 12
107261847f8eSopenharmony_ci     */
107361847f8eSopenharmony_ci    daysOfYear?: number[];
107461847f8eSopenharmony_ci
107561847f8eSopenharmony_ci    /**
107661847f8eSopenharmony_ci     * The weeks of the month associated with the recurrence event.
107761847f8eSopenharmony_ci     * @type { ?number[] }
107861847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
107961847f8eSopenharmony_ci     * @atomicservice
108061847f8eSopenharmony_ci     * @since 12
108161847f8eSopenharmony_ci     */
108261847f8eSopenharmony_ci    weeksOfMonth?: number[];
108361847f8eSopenharmony_ci
108461847f8eSopenharmony_ci    /**
108561847f8eSopenharmony_ci     * The weeks of the year associated with the recurrence event.
108661847f8eSopenharmony_ci     * @type { ?number[] }
108761847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
108861847f8eSopenharmony_ci     * @atomicservice
108961847f8eSopenharmony_ci     * @since 12
109061847f8eSopenharmony_ci     */
109161847f8eSopenharmony_ci    weeksOfYear?: number[];
109261847f8eSopenharmony_ci
109361847f8eSopenharmony_ci    /**
109461847f8eSopenharmony_ci     * The months of the year associated with the recurrence event.
109561847f8eSopenharmony_ci     * @type { ?number[] }
109661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
109761847f8eSopenharmony_ci     * @atomicservice
109861847f8eSopenharmony_ci     * @since 12
109961847f8eSopenharmony_ci     */
110061847f8eSopenharmony_ci    monthsOfYear?: number[];
110161847f8eSopenharmony_ci  }
110261847f8eSopenharmony_ci
110361847f8eSopenharmony_ci  /**
110461847f8eSopenharmony_ci   * Enum for the recurrence type by different period
110561847f8eSopenharmony_ci   * @enum { number }
110661847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
110761847f8eSopenharmony_ci   * @since 10
110861847f8eSopenharmony_ci   */
110961847f8eSopenharmony_ci  /**
111061847f8eSopenharmony_ci   * Enum for the recurrence type by different period
111161847f8eSopenharmony_ci   * @enum { number }
111261847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
111361847f8eSopenharmony_ci   * @atomicservice
111461847f8eSopenharmony_ci   * @since 11
111561847f8eSopenharmony_ci   */
111661847f8eSopenharmony_ci  export enum RecurrenceFrequency {
111761847f8eSopenharmony_ci    /**
111861847f8eSopenharmony_ci     * The event repeats every year.
111961847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
112061847f8eSopenharmony_ci     * @since 10
112161847f8eSopenharmony_ci     */
112261847f8eSopenharmony_ci    /**
112361847f8eSopenharmony_ci     * The event repeats every year.
112461847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
112561847f8eSopenharmony_ci     * @atomicservice
112661847f8eSopenharmony_ci     * @since 11
112761847f8eSopenharmony_ci     */
112861847f8eSopenharmony_ci    YEARLY = 0,
112961847f8eSopenharmony_ci
113061847f8eSopenharmony_ci    /**
113161847f8eSopenharmony_ci     * The event repeats every month.
113261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
113361847f8eSopenharmony_ci     * @since 10
113461847f8eSopenharmony_ci     */
113561847f8eSopenharmony_ci    /**
113661847f8eSopenharmony_ci     * The event repeats every month.
113761847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
113861847f8eSopenharmony_ci     * @atomicservice
113961847f8eSopenharmony_ci     * @since 11
114061847f8eSopenharmony_ci     */
114161847f8eSopenharmony_ci    MONTHLY = 1,
114261847f8eSopenharmony_ci
114361847f8eSopenharmony_ci    /**
114461847f8eSopenharmony_ci     * The event repeats every week.
114561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
114661847f8eSopenharmony_ci     * @since 10
114761847f8eSopenharmony_ci     */
114861847f8eSopenharmony_ci    /**
114961847f8eSopenharmony_ci     * The event repeats every week.
115061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
115161847f8eSopenharmony_ci     * @atomicservice
115261847f8eSopenharmony_ci     * @since 11
115361847f8eSopenharmony_ci     */
115461847f8eSopenharmony_ci    WEEKLY = 2,
115561847f8eSopenharmony_ci
115661847f8eSopenharmony_ci    /**
115761847f8eSopenharmony_ci     * The event repeats every day.
115861847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
115961847f8eSopenharmony_ci     * @since 10
116061847f8eSopenharmony_ci     */
116161847f8eSopenharmony_ci    /**
116261847f8eSopenharmony_ci     * The event repeats every day.
116361847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
116461847f8eSopenharmony_ci     * @atomicservice
116561847f8eSopenharmony_ci     * @since 11
116661847f8eSopenharmony_ci     */
116761847f8eSopenharmony_ci    DAILY = 3,
116861847f8eSopenharmony_ci  }
116961847f8eSopenharmony_ci
117061847f8eSopenharmony_ci  /**
117161847f8eSopenharmony_ci   * Defines the attendee information
117261847f8eSopenharmony_ci   * @typedef Attendee
117361847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
117461847f8eSopenharmony_ci   * @since 10
117561847f8eSopenharmony_ci   */
117661847f8eSopenharmony_ci  /**
117761847f8eSopenharmony_ci   * Defines the attendee information
117861847f8eSopenharmony_ci   * @typedef Attendee
117961847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
118061847f8eSopenharmony_ci   * @atomicservice
118161847f8eSopenharmony_ci   * @since 11
118261847f8eSopenharmony_ci   */
118361847f8eSopenharmony_ci  export interface Attendee {
118461847f8eSopenharmony_ci    /**
118561847f8eSopenharmony_ci     * Name of the Attendee.
118661847f8eSopenharmony_ci     * @type { string }
118761847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
118861847f8eSopenharmony_ci     * @since 10
118961847f8eSopenharmony_ci     */
119061847f8eSopenharmony_ci    /**
119161847f8eSopenharmony_ci     * Name of the Attendee.
119261847f8eSopenharmony_ci     * @type { string }
119361847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
119461847f8eSopenharmony_ci     * @atomicservice
119561847f8eSopenharmony_ci     * @since 11
119661847f8eSopenharmony_ci     */
119761847f8eSopenharmony_ci    name: string;
119861847f8eSopenharmony_ci
119961847f8eSopenharmony_ci    /**
120061847f8eSopenharmony_ci     * Email of the Attendee.
120161847f8eSopenharmony_ci     * @type { string }
120261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
120361847f8eSopenharmony_ci     * @since 10
120461847f8eSopenharmony_ci     */
120561847f8eSopenharmony_ci    /**
120661847f8eSopenharmony_ci     * Email of the Attendee.
120761847f8eSopenharmony_ci     * @type { string }
120861847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
120961847f8eSopenharmony_ci     * @atomicservice
121061847f8eSopenharmony_ci     * @since 11
121161847f8eSopenharmony_ci     */
121261847f8eSopenharmony_ci    email: string;
121361847f8eSopenharmony_ci
121461847f8eSopenharmony_ci    /**
121561847f8eSopenharmony_ci     * Role of the Attendee.
121661847f8eSopenharmony_ci     * @type { ?AttendeeRole }
121761847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
121861847f8eSopenharmony_ci     * @atomicservice
121961847f8eSopenharmony_ci     * @since 12
122061847f8eSopenharmony_ci     */
122161847f8eSopenharmony_ci    role?: AttendeeRole;
122261847f8eSopenharmony_ci  }
122361847f8eSopenharmony_ci
122461847f8eSopenharmony_ci  /**
122561847f8eSopenharmony_ci   * Enum for the attendee role
122661847f8eSopenharmony_ci   * @enum { string }
122761847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
122861847f8eSopenharmony_ci   * @atomicservice
122961847f8eSopenharmony_ci   * @since 12
123061847f8eSopenharmony_ci   */
123161847f8eSopenharmony_ci  export enum AttendeeRole {
123261847f8eSopenharmony_ci    /**
123361847f8eSopenharmony_ci     * The organizer of a meeting.
123461847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
123561847f8eSopenharmony_ci     * @atomicservice
123661847f8eSopenharmony_ci     * @since 12
123761847f8eSopenharmony_ci     */
123861847f8eSopenharmony_ci    ORGANIZER = 'organizer',
123961847f8eSopenharmony_ci
124061847f8eSopenharmony_ci    /**
124161847f8eSopenharmony_ci     * The participant of a meeting.
124261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
124361847f8eSopenharmony_ci     * @atomicservice
124461847f8eSopenharmony_ci     * @since 12
124561847f8eSopenharmony_ci     */
124661847f8eSopenharmony_ci    PARTICIPANT = 'participant'
124761847f8eSopenharmony_ci  }
124861847f8eSopenharmony_ci
124961847f8eSopenharmony_ci  /**
125061847f8eSopenharmony_ci   * Defines event service information
125161847f8eSopenharmony_ci   * @typedef EventService
125261847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
125361847f8eSopenharmony_ci   * @since 10
125461847f8eSopenharmony_ci   */
125561847f8eSopenharmony_ci  /**
125661847f8eSopenharmony_ci   * Defines event service information
125761847f8eSopenharmony_ci   * @typedef EventService
125861847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
125961847f8eSopenharmony_ci   * @atomicservice
126061847f8eSopenharmony_ci   * @since 11
126161847f8eSopenharmony_ci   */
126261847f8eSopenharmony_ci  export interface EventService {
126361847f8eSopenharmony_ci    /**
126461847f8eSopenharmony_ci     * Type of the EventService.
126561847f8eSopenharmony_ci     * @type { ServiceType }
126661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
126761847f8eSopenharmony_ci     * @since 10
126861847f8eSopenharmony_ci     */
126961847f8eSopenharmony_ci    /**
127061847f8eSopenharmony_ci     * Type of the EventService.
127161847f8eSopenharmony_ci     * @type { ServiceType }
127261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
127361847f8eSopenharmony_ci     * @atomicservice
127461847f8eSopenharmony_ci     * @since 11
127561847f8eSopenharmony_ci     */
127661847f8eSopenharmony_ci    type: ServiceType;
127761847f8eSopenharmony_ci
127861847f8eSopenharmony_ci    /**
127961847f8eSopenharmony_ci     * Uri of the EventService.
128061847f8eSopenharmony_ci     * @type { string }
128161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
128261847f8eSopenharmony_ci     * @since 10
128361847f8eSopenharmony_ci     */
128461847f8eSopenharmony_ci    /**
128561847f8eSopenharmony_ci     * Uri of the EventService.
128661847f8eSopenharmony_ci     * @type { string }
128761847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
128861847f8eSopenharmony_ci     * @atomicservice
128961847f8eSopenharmony_ci     * @since 11
129061847f8eSopenharmony_ci     */
129161847f8eSopenharmony_ci    uri: string;
129261847f8eSopenharmony_ci
129361847f8eSopenharmony_ci    /**
129461847f8eSopenharmony_ci     * Description of the EventService.
129561847f8eSopenharmony_ci     * @type { ?string }
129661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
129761847f8eSopenharmony_ci     * @since 10
129861847f8eSopenharmony_ci     */
129961847f8eSopenharmony_ci    /**
130061847f8eSopenharmony_ci     * Description of the EventService.
130161847f8eSopenharmony_ci     * @type { ?string }
130261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
130361847f8eSopenharmony_ci     * @atomicservice
130461847f8eSopenharmony_ci     * @since 11
130561847f8eSopenharmony_ci     */
130661847f8eSopenharmony_ci    description?: string;
130761847f8eSopenharmony_ci  }
130861847f8eSopenharmony_ci
130961847f8eSopenharmony_ci  /**
131061847f8eSopenharmony_ci   * Defines event service type
131161847f8eSopenharmony_ci   * @enum { string }
131261847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
131361847f8eSopenharmony_ci   * @since 10
131461847f8eSopenharmony_ci   */
131561847f8eSopenharmony_ci  /**
131661847f8eSopenharmony_ci   * Defines event service type
131761847f8eSopenharmony_ci   * @enum { string }
131861847f8eSopenharmony_ci   * @syscap SystemCapability.Applications.CalendarData
131961847f8eSopenharmony_ci   * @atomicservice
132061847f8eSopenharmony_ci   * @since 11
132161847f8eSopenharmony_ci   */
132261847f8eSopenharmony_ci  export enum ServiceType {
132361847f8eSopenharmony_ci    /**
132461847f8eSopenharmony_ci     * Meeting event.
132561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
132661847f8eSopenharmony_ci     * @since 10
132761847f8eSopenharmony_ci     */
132861847f8eSopenharmony_ci    /**
132961847f8eSopenharmony_ci     * Meeting event.
133061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
133161847f8eSopenharmony_ci     * @atomicservice
133261847f8eSopenharmony_ci     * @since 11
133361847f8eSopenharmony_ci     */
133461847f8eSopenharmony_ci    MEETING = 'Meeting',
133561847f8eSopenharmony_ci
133661847f8eSopenharmony_ci    /**
133761847f8eSopenharmony_ci     * Watch drama event.
133861847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
133961847f8eSopenharmony_ci     * @since 10
134061847f8eSopenharmony_ci     */
134161847f8eSopenharmony_ci    /**
134261847f8eSopenharmony_ci     * Watch drama event.
134361847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
134461847f8eSopenharmony_ci     * @atomicservice
134561847f8eSopenharmony_ci     * @since 11
134661847f8eSopenharmony_ci     */
134761847f8eSopenharmony_ci    WATCHING = 'Watching',
134861847f8eSopenharmony_ci
134961847f8eSopenharmony_ci    /**
135061847f8eSopenharmony_ci     * Repayment event.
135161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
135261847f8eSopenharmony_ci     * @since 10
135361847f8eSopenharmony_ci     */
135461847f8eSopenharmony_ci    /**
135561847f8eSopenharmony_ci     * Repayment event.
135661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
135761847f8eSopenharmony_ci     * @atomicservice
135861847f8eSopenharmony_ci     * @since 11
135961847f8eSopenharmony_ci     */
136061847f8eSopenharmony_ci    REPAYMENT = 'Repayment',
136161847f8eSopenharmony_ci
136261847f8eSopenharmony_ci    /**
136361847f8eSopenharmony_ci     * Live event.
136461847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
136561847f8eSopenharmony_ci     * @since 10
136661847f8eSopenharmony_ci     */
136761847f8eSopenharmony_ci    /**
136861847f8eSopenharmony_ci     * Live event.
136961847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
137061847f8eSopenharmony_ci     * @atomicservice
137161847f8eSopenharmony_ci     * @since 11
137261847f8eSopenharmony_ci     */
137361847f8eSopenharmony_ci    LIVE = 'Live',
137461847f8eSopenharmony_ci
137561847f8eSopenharmony_ci    /**
137661847f8eSopenharmony_ci     * Shopping event.
137761847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
137861847f8eSopenharmony_ci     * @since 10
137961847f8eSopenharmony_ci     */
138061847f8eSopenharmony_ci    /**
138161847f8eSopenharmony_ci     * Shopping event.
138261847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
138361847f8eSopenharmony_ci     * @atomicservice
138461847f8eSopenharmony_ci     * @since 11
138561847f8eSopenharmony_ci     */
138661847f8eSopenharmony_ci    SHOPPING = 'Shopping',
138761847f8eSopenharmony_ci
138861847f8eSopenharmony_ci    /**
138961847f8eSopenharmony_ci     * trip event.
139061847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
139161847f8eSopenharmony_ci     * @since 10
139261847f8eSopenharmony_ci     */
139361847f8eSopenharmony_ci    /**
139461847f8eSopenharmony_ci     * trip event.
139561847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
139661847f8eSopenharmony_ci     * @atomicservice
139761847f8eSopenharmony_ci     * @since 11
139861847f8eSopenharmony_ci     */
139961847f8eSopenharmony_ci    TRIP = 'Trip',
140061847f8eSopenharmony_ci
140161847f8eSopenharmony_ci    /**
140261847f8eSopenharmony_ci     * Class event.
140361847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
140461847f8eSopenharmony_ci     * @since 10
140561847f8eSopenharmony_ci     */
140661847f8eSopenharmony_ci    /**
140761847f8eSopenharmony_ci     * Class event.
140861847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
140961847f8eSopenharmony_ci     * @atomicservice
141061847f8eSopenharmony_ci     * @since 11
141161847f8eSopenharmony_ci     */
141261847f8eSopenharmony_ci    CLASS = 'Class',
141361847f8eSopenharmony_ci
141461847f8eSopenharmony_ci    /**
141561847f8eSopenharmony_ci     * Sports game event.
141661847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
141761847f8eSopenharmony_ci     * @since 10
141861847f8eSopenharmony_ci     */
141961847f8eSopenharmony_ci    /**
142061847f8eSopenharmony_ci     * Sports game event.
142161847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
142261847f8eSopenharmony_ci     * @atomicservice
142361847f8eSopenharmony_ci     * @since 11
142461847f8eSopenharmony_ci     */
142561847f8eSopenharmony_ci    SPORTS_EVENTS = 'SportsEvents',
142661847f8eSopenharmony_ci
142761847f8eSopenharmony_ci    /**
142861847f8eSopenharmony_ci     * Sports exercise event.
142961847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
143061847f8eSopenharmony_ci     * @since 10
143161847f8eSopenharmony_ci     */
143261847f8eSopenharmony_ci    /**
143361847f8eSopenharmony_ci     * Sports exercise event.
143461847f8eSopenharmony_ci     * @syscap SystemCapability.Applications.CalendarData
143561847f8eSopenharmony_ci     * @atomicservice
143661847f8eSopenharmony_ci     * @since 11
143761847f8eSopenharmony_ci     */
143861847f8eSopenharmony_ci    SPORTS_EXERCISE = 'SportsExercise',
143961847f8eSopenharmony_ci  }
144061847f8eSopenharmony_ci}
144161847f8eSopenharmony_ci
144261847f8eSopenharmony_ciexport default calendarManager;