@wix/auto_sdk_calendar_schedules 1.0.53 → 1.0.55

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,5 @@
1
+ import { NonNullablePaths } from '@wix/sdk-types';
2
+
1
3
  /**
2
4
  * A collection of [events](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/event-object)
3
5
  * associated with a specific entity, such as a
@@ -270,6 +272,8 @@ declare enum IdentityType {
270
272
  UNKNOWN = "UNKNOWN",
271
273
  WIX_USER = "WIX_USER"
272
274
  }
275
+ /** @enumType */
276
+ type IdentityTypeWithLiterals = IdentityType | 'UNKNOWN' | 'WIX_USER';
273
277
  declare enum Role {
274
278
  UNKNOWN_ROLE = "UNKNOWN_ROLE",
275
279
  /** Full read and write access. */
@@ -1408,6 +1412,16 @@ declare enum WebhookIdentityType {
1408
1412
  }
1409
1413
  /** @enumType */
1410
1414
  type WebhookIdentityTypeWithLiterals = WebhookIdentityType | 'UNKNOWN' | 'ANONYMOUS_VISITOR' | 'MEMBER' | 'WIX_USER' | 'APP';
1415
+ type UpdateScheduleApplicationErrors = {
1416
+ code?: 'UPDATE_CANCELLED_SCHEDULE_NOT_ALLOWED';
1417
+ description?: string;
1418
+ data?: Record<string, any>;
1419
+ };
1420
+ type CancelScheduleApplicationErrors = {
1421
+ code?: 'SCHEDULE_ALREADY_CANCELLED';
1422
+ description?: string;
1423
+ data?: Record<string, any>;
1424
+ };
1411
1425
  interface BaseEventMetadata {
1412
1426
  /**
1413
1427
  * App instance ID.
@@ -1456,18 +1470,124 @@ interface ScheduleCancelledEnvelope {
1456
1470
  data: ScheduleCancelled;
1457
1471
  metadata: EventMetadata;
1458
1472
  }
1473
+ /**
1474
+ * Triggered when a schedule is canceled.
1475
+ * @permissionScope Read Calendar - Including PI
1476
+ * @permissionScopeId SCOPE.DC-CALENDAR.READ-PI
1477
+ * @permissionScope Manage Calendars
1478
+ * @permissionScopeId SCOPE.DC-CALENDAR.MANAGE
1479
+ * @permissionScope Manage Bookings
1480
+ * @permissionScopeId SCOPE.DC-BOOKINGS.MANAGE-BOOKINGS
1481
+ * @permissionScope Read Bookings - Including Participants
1482
+ * @permissionScopeId SCOPE.DC-BOOKINGS.READ-BOOKINGS-SENSITIVE
1483
+ * @permissionScope Read Bookings - all read permissions
1484
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.READ-BOOKINGS
1485
+ * @permissionScope Manage Bookings - all permissions
1486
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.MANAGE-BOOKINGS
1487
+ * @permissionScope Read bookings calendar - including participants
1488
+ * @permissionScopeId SCOPE.DC-BOOKINGS.READ-CALENDAR-WITH-PARTICIPANTS
1489
+ * @permissionId CALENDAR.SCHEDULE_READ_PI
1490
+ * @webhook
1491
+ * @eventType wix.calendar.v3.schedule_cancelled
1492
+ * @serviceIdentifier wix.calendar.schedules.v3.SchedulesService
1493
+ * @slug cancelled
1494
+ */
1495
+ declare function onScheduleCancelled(handler: (event: ScheduleCancelledEnvelope) => void | Promise<void>): void;
1459
1496
  interface ScheduleClonedEnvelope {
1460
1497
  data: ScheduleCloned;
1461
1498
  metadata: EventMetadata;
1462
1499
  }
1500
+ /**
1501
+ * Triggered when a schedule is cloned.
1502
+ * @permissionScope Read Calendar - Including PI
1503
+ * @permissionScopeId SCOPE.DC-CALENDAR.READ-PI
1504
+ * @permissionScope Manage Calendars
1505
+ * @permissionScopeId SCOPE.DC-CALENDAR.MANAGE
1506
+ * @permissionScope Manage Bookings
1507
+ * @permissionScopeId SCOPE.DC-BOOKINGS.MANAGE-BOOKINGS
1508
+ * @permissionScope Read Bookings - Including Participants
1509
+ * @permissionScopeId SCOPE.DC-BOOKINGS.READ-BOOKINGS-SENSITIVE
1510
+ * @permissionScope Read Bookings - all read permissions
1511
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.READ-BOOKINGS
1512
+ * @permissionScope Manage Bookings - all permissions
1513
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.MANAGE-BOOKINGS
1514
+ * @permissionScope Read bookings calendar - including participants
1515
+ * @permissionScopeId SCOPE.DC-BOOKINGS.READ-CALENDAR-WITH-PARTICIPANTS
1516
+ * @permissionId CALENDAR.SCHEDULE_READ_PI
1517
+ * @webhook
1518
+ * @eventType wix.calendar.v3.schedule_cloned
1519
+ * @serviceIdentifier wix.calendar.schedules.v3.SchedulesService
1520
+ * @slug cloned
1521
+ */
1522
+ declare function onScheduleCloned(handler: (event: ScheduleClonedEnvelope) => void | Promise<void>): void;
1463
1523
  interface ScheduleCreatedEnvelope {
1464
1524
  entity: Schedule;
1465
1525
  metadata: EventMetadata;
1466
1526
  }
1527
+ /**
1528
+ * Triggered when a schedule is created.
1529
+ * @permissionScope Read Calendar - Including PI
1530
+ * @permissionScopeId SCOPE.DC-CALENDAR.READ-PI
1531
+ * @permissionScope Manage Calendars
1532
+ * @permissionScopeId SCOPE.DC-CALENDAR.MANAGE
1533
+ * @permissionScope Manage Bookings
1534
+ * @permissionScopeId SCOPE.DC-BOOKINGS.MANAGE-BOOKINGS
1535
+ * @permissionScope Read Bookings - Including Participants
1536
+ * @permissionScopeId SCOPE.DC-BOOKINGS.READ-BOOKINGS-SENSITIVE
1537
+ * @permissionScope Read Bookings - all read permissions
1538
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.READ-BOOKINGS
1539
+ * @permissionScope Manage Bookings - all permissions
1540
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.MANAGE-BOOKINGS
1541
+ * @permissionScope Read bookings calendar - including participants
1542
+ * @permissionScopeId SCOPE.DC-BOOKINGS.READ-CALENDAR-WITH-PARTICIPANTS
1543
+ * @permissionId CALENDAR.SCHEDULE_READ_PI
1544
+ * @webhook
1545
+ * @eventType wix.calendar.v3.schedule_created
1546
+ * @serviceIdentifier wix.calendar.schedules.v3.SchedulesService
1547
+ * @slug created
1548
+ */
1549
+ declare function onScheduleCreated(handler: (event: ScheduleCreatedEnvelope) => void | Promise<void>): void;
1467
1550
  interface ScheduleUpdatedEnvelope {
1468
1551
  entity: Schedule;
1469
1552
  metadata: EventMetadata;
1470
1553
  }
1554
+ /**
1555
+ * Triggered when a schedule is updated.
1556
+ * @permissionScope Read Calendar - Including PI
1557
+ * @permissionScopeId SCOPE.DC-CALENDAR.READ-PI
1558
+ * @permissionScope Manage Calendars
1559
+ * @permissionScopeId SCOPE.DC-CALENDAR.MANAGE
1560
+ * @permissionScope Manage Bookings
1561
+ * @permissionScopeId SCOPE.DC-BOOKINGS.MANAGE-BOOKINGS
1562
+ * @permissionScope Read Bookings - Including Participants
1563
+ * @permissionScopeId SCOPE.DC-BOOKINGS.READ-BOOKINGS-SENSITIVE
1564
+ * @permissionScope Read Bookings - all read permissions
1565
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.READ-BOOKINGS
1566
+ * @permissionScope Manage Bookings - all permissions
1567
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.MANAGE-BOOKINGS
1568
+ * @permissionScope Read bookings calendar - including participants
1569
+ * @permissionScopeId SCOPE.DC-BOOKINGS.READ-CALENDAR-WITH-PARTICIPANTS
1570
+ * @permissionId CALENDAR.SCHEDULE_READ_PI
1571
+ * @webhook
1572
+ * @eventType wix.calendar.v3.schedule_updated
1573
+ * @serviceIdentifier wix.calendar.schedules.v3.SchedulesService
1574
+ * @slug updated
1575
+ */
1576
+ declare function onScheduleUpdated(handler: (event: ScheduleUpdatedEnvelope) => void | Promise<void>): void;
1577
+ type ScheduleNonNullablePaths = `status` | `defaultLocation.type` | `defaultConferencingDetails.type` | `permissions` | `permissions.${number}.identity.wixUserId` | `permissions.${number}.role`;
1578
+ /**
1579
+ * Retrieves a schedule.
1580
+ * @param scheduleId - ID of the schedule to retrieve.
1581
+ * @public
1582
+ * @requiredField scheduleId
1583
+ * @permissionId CALENDAR.SCHEDULE_READ
1584
+ * @permissionId CALENDAR.SCHEDULE_READ_PI
1585
+ * @applicableIdentity APP
1586
+ * @applicableIdentity VISITOR
1587
+ * @returns Retrieved schedule.
1588
+ * @fqn wix.calendar.schedules.v3.SchedulesService.GetSchedule
1589
+ */
1590
+ declare function getSchedule(scheduleId: string, options?: GetScheduleOptions): Promise<NonNullablePaths<Schedule, ScheduleNonNullablePaths>>;
1471
1591
  interface GetScheduleOptions {
1472
1592
  /**
1473
1593
  * Information about which fields containing personal data to return. Refer to the
@@ -1484,6 +1604,31 @@ interface GetScheduleOptions {
1484
1604
  */
1485
1605
  fields?: RequestedFieldsWithLiterals[];
1486
1606
  }
1607
+ /**
1608
+ * Creates a query to retrieve a list of schedules.
1609
+ *
1610
+ * The `querySchedules()` function builds a query to retrieve a list of tip settings and returns a `SchedulesQueryBuilder` object.
1611
+ *
1612
+ * The returned object contains the query definition, which is typically used to run the query using the [find()](https://dev.wix.com/docs/sdk/backend-modules/calendar/schedules/schedules-query-builder/find) function.
1613
+ *
1614
+ * You can refine the query by chaining `SchedulesQueryBuilder` functions onto the query. `SchedulesQueryBuilder` functions enable you to sort, filter, and control the results that `querySchedules()` returns.
1615
+ *
1616
+ * `querySchedules()` runs with the following `SchedulesQueryBuilder` default that you can override:
1617
+ *
1618
+ * + `limit` is `50`.
1619
+ * + Sorted by `id` in ascending order.
1620
+ *
1621
+ * The functions that are chained to `querySchedules()` are applied in the order they are called. For example, if you apply `ascending("status")` and then `ascending("externalId")`, the results are sorted first by the `"status"`, and then, if there are multiple results with the same `"status"`, the items are sorted by `"externalId"`.
1622
+ *
1623
+ * The following `SchedulesQueryBuilder` functions are supported for the `querySchedules()` function. For a full description of the tip settings object, see the object returned for the [items](https://dev.wix.com/docs/sdk/backend-modules/calendar/schedules/schedules-query-result/items) property in `SchedulesQueryResult`.
1624
+ * @public
1625
+ * @permissionId CALENDAR.SCHEDULE_READ
1626
+ * @permissionId CALENDAR.SCHEDULE_READ_PI
1627
+ * @applicableIdentity APP
1628
+ * @applicableIdentity VISITOR
1629
+ * @fqn wix.calendar.schedules.v3.SchedulesService.QuerySchedules
1630
+ */
1631
+ declare function querySchedules(options?: QuerySchedulesOptions): SchedulesQueryBuilder;
1487
1632
  interface QuerySchedulesOptions {
1488
1633
  /**
1489
1634
  * Information about which fields containing personal data to return. Refer to the
@@ -1525,6 +1670,29 @@ interface SchedulesQueryBuilder {
1525
1670
  skipTo: (cursor: string) => SchedulesQueryBuilder;
1526
1671
  find: () => Promise<SchedulesQueryResult>;
1527
1672
  }
1673
+ /**
1674
+ * Creates a schedule.
1675
+ *
1676
+ *
1677
+ * If you want the schedule's events to appear in the
1678
+ * [Bookings calendar](https://support.wix.com/en/article/wix-bookings-about-the-wix-booking-calendar),
1679
+ * you must set `appId` to the ID of the Wix Bookings app by providing
1680
+ * `{"appId": "13d21c63-b5ec-5912-8397-c3a5ddb27a97"}`.
1681
+ * @param schedule - Schedule to create.
1682
+ * @public
1683
+ * @requiredField schedule
1684
+ * @requiredField schedule.defaultConferencingDetails.guestUrl
1685
+ * @requiredField schedule.defaultConferencingDetails.hostUrl
1686
+ * @requiredField schedule.defaultConferencingDetails.type
1687
+ * @requiredField schedule.defaultLocation.type
1688
+ * @requiredField schedule.permissions.identity
1689
+ * @requiredField schedule.permissions.role
1690
+ * @permissionId CALENDAR.SCHEDULE_CREATE
1691
+ * @applicableIdentity APP
1692
+ * @returns Created schedule.
1693
+ * @fqn wix.calendar.schedules.v3.SchedulesService.CreateSchedule
1694
+ */
1695
+ declare function createSchedule(schedule: NonNullablePaths<Schedule, `defaultConferencingDetails.guestUrl` | `defaultConferencingDetails.hostUrl` | `defaultConferencingDetails.type` | `defaultLocation.type` | `permissions.${number}.identity` | `permissions.${number}.role`>, options?: CreateScheduleOptions): Promise<NonNullablePaths<Schedule, ScheduleNonNullablePaths>>;
1528
1696
  interface CreateScheduleOptions {
1529
1697
  /**
1530
1698
  * Idempotency key guaranteeing that you don't create the same schedule more
@@ -1533,6 +1701,30 @@ interface CreateScheduleOptions {
1533
1701
  */
1534
1702
  idempotencyKey?: string | null;
1535
1703
  }
1704
+ /**
1705
+ * Updates a schedule.
1706
+ *
1707
+ *
1708
+ * Each time the schedule is updated,
1709
+ * `revision` increments by 1.
1710
+ * The current `revision` must be passed when updating the schedule.
1711
+ * This ensures you're working with the latest schedule
1712
+ * and prevents unintended overwrites.
1713
+ * @param _id - Schedule ID.
1714
+ * @public
1715
+ * @requiredField _id
1716
+ * @requiredField schedule
1717
+ * @requiredField schedule.permissions.identity
1718
+ * @requiredField schedule.permissions.role
1719
+ * @requiredField schedule.revision
1720
+ * @permissionId CALENDAR.SCHEDULE_UPDATE
1721
+ * @applicableIdentity APP
1722
+ * @returns Updated schedule.
1723
+ * @fqn wix.calendar.schedules.v3.SchedulesService.UpdateSchedule
1724
+ */
1725
+ declare function updateSchedule(_id: string, schedule: NonNullablePaths<UpdateSchedule, `permissions.${number}.identity` | `permissions.${number}.role` | `revision`>, options?: UpdateScheduleOptions): Promise<NonNullablePaths<Schedule, ScheduleNonNullablePaths> & {
1726
+ __applicationErrorsType?: UpdateScheduleApplicationErrors;
1727
+ }>;
1536
1728
  interface UpdateSchedule {
1537
1729
  /**
1538
1730
  * Schedule ID.
@@ -1665,6 +1857,26 @@ interface UpdateScheduleOptions {
1665
1857
  */
1666
1858
  participantNotification?: ParticipantNotification;
1667
1859
  }
1860
+ /**
1861
+ * Sets a schedule's `status` to `CANCELLED`.
1862
+ *
1863
+ *
1864
+ * Also cancels future events belonging to the schedule.
1865
+ *
1866
+ * Once a schedule is marked as `CANCELLED`, you can't reactivate it, update it,
1867
+ * or assign new events.
1868
+ * @param scheduleId - ID of the schedule to cancel.
1869
+ * @public
1870
+ * @requiredField scheduleId
1871
+ * @permissionId CALENDAR.SCHEDULE_CANCEL
1872
+ * @applicableIdentity APP
1873
+ * @fqn wix.calendar.schedules.v3.SchedulesService.CancelSchedule
1874
+ */
1875
+ declare function cancelSchedule(scheduleId: string, options?: CancelScheduleOptions): Promise<NonNullablePaths<CancelScheduleResponse, {
1876
+ [P in ScheduleNonNullablePaths]: `schedule.${P}`;
1877
+ }[ScheduleNonNullablePaths]> & {
1878
+ __applicationErrorsType?: CancelScheduleApplicationErrors;
1879
+ }>;
1668
1880
  interface CancelScheduleOptions {
1669
1881
  /**
1670
1882
  * Whether to preserve future events with participants.
@@ -1678,4 +1890,4 @@ interface CancelScheduleOptions {
1678
1890
  participantNotification?: ParticipantNotification;
1679
1891
  }
1680
1892
 
1681
- export { type ScheduleCancelled as $, type QuerySchedulesResponse as A, type CursorPagingMetadata as B, type CreateScheduleOptions as C, DeleteStatus as D, type ExtendedFields as E, type Cursors as F, type GetScheduleOptions as G, type CreateScheduleRequest as H, IdentityType as I, type CreateScheduleResponse as J, type UpdateScheduleRequest as K, LocationType as L, type ParticipantNotification as M, Namespace as N, type UpdateScheduleResponse as O, PlacementType as P, type QuerySchedulesOptions as Q, Role as R, type Schedule as S, Type as T, type UpdateSchedule as U, type ScheduleUpdatedWithMetadata as V, WebhookIdentityType as W, type CloneScheduleRequest as X, type CloneScheduleResponse as Y, type ScheduleCloned as Z, type CancelScheduleRequest as _, type SchedulesQueryBuilder as a, type MetaSiteSpecialEvent as a0, type MetaSiteSpecialEventPayloadOneOf as a1, type Asset as a2, type SiteCreated as a3, type SiteTransferred as a4, type SiteDeleted as a5, type DeleteContext as a6, type SiteUndeleted as a7, type SitePublished as a8, type SiteUnpublished as a9, type SpecialHourPeriod as aA, type Multilingual as aB, type SupportedLanguage as aC, type ConsentPolicy as aD, type Translation as aE, type ChangeContext as aF, type ChangeContextPayloadOneOf as aG, type PropertiesChange as aH, type V4SiteCreated as aI, type SiteCloned as aJ, type DomainEvent as aK, type DomainEventBodyOneOf as aL, type EntityCreatedEvent as aM, type RestoreInfo as aN, type EntityUpdatedEvent as aO, type EntityDeletedEvent as aP, type ActionEvent as aQ, type MessageEnvelope as aR, type IdentificationData as aS, type IdentificationDataIdOneOf as aT, type BaseEventMetadata as aU, type EventMetadata as aV, type SchedulesQueryResult as aW, type SiteMarkedAsTemplate as aa, type SiteMarkedAsWixSite as ab, type ServiceProvisioned as ac, type ServiceRemoved as ad, type SiteRenamed as ae, type SiteHardDeleted as af, type NamespaceChanged as ag, type StudioAssigned as ah, type StudioUnassigned as ai, type SiteUrlChanged as aj, type SitePurgedExternally as ak, type OdeditorAssigned as al, type OdeditorUnassigned as am, type PicassoAssigned as an, type PicassoUnassigned as ao, type Empty as ap, type SitePropertiesNotification as aq, type SitePropertiesEvent as ar, type Properties as as, type Categories as at, type Locale as au, type Address as av, type AddressHint as aw, type GeoCoordinates as ax, type BusinessSchedule as ay, type TimePeriod as az, type UpdateScheduleOptions as b, type CancelScheduleOptions as c, type CancelScheduleResponse as d, type ScheduleCancelledEnvelope as e, type ScheduleClonedEnvelope as f, type ScheduleCreatedEnvelope as g, type ScheduleUpdatedEnvelope as h, Status as i, RequestedFields as j, Trigger as k, State as l, SiteCreatedContext as m, DayOfWeek as n, ResolutionMethod as o, type Location as p, type ConferencingDetails as q, type Permission as r, type CommonIdentificationData as s, type CommonIdentificationDataIdOneOf as t, type GetScheduleRequest as u, type GetScheduleResponse as v, type QuerySchedulesRequest as w, type CursorQuery as x, type CursorQueryPagingMethodOneOf as y, type CursorPaging as z };
1893
+ export { type ActionEvent, type Address, type AddressHint, type Asset, type BaseEventMetadata, type BusinessSchedule, type CancelScheduleApplicationErrors, type CancelScheduleOptions, type CancelScheduleRequest, type CancelScheduleResponse, type Categories, type ChangeContext, type ChangeContextPayloadOneOf, type CloneScheduleRequest, type CloneScheduleResponse, type CommonIdentificationData, type CommonIdentificationDataIdOneOf, type ConferencingDetails, type ConsentPolicy, type CreateScheduleOptions, type CreateScheduleRequest, type CreateScheduleResponse, type CursorPaging, type CursorPagingMetadata, type CursorQuery, type CursorQueryPagingMethodOneOf, type Cursors, DayOfWeek, type DayOfWeekWithLiterals, type DeleteContext, DeleteStatus, type DeleteStatusWithLiterals, type DomainEvent, type DomainEventBodyOneOf, type Empty, type EntityCreatedEvent, type EntityDeletedEvent, type EntityUpdatedEvent, type EventMetadata, type ExtendedFields, type GeoCoordinates, type GetScheduleOptions, type GetScheduleRequest, type GetScheduleResponse, type IdentificationData, type IdentificationDataIdOneOf, IdentityType, type IdentityTypeWithLiterals, type Locale, type Location, LocationType, type LocationTypeWithLiterals, type MessageEnvelope, type MetaSiteSpecialEvent, type MetaSiteSpecialEventPayloadOneOf, type Multilingual, Namespace, type NamespaceChanged, type NamespaceWithLiterals, type OdeditorAssigned, type OdeditorUnassigned, type ParticipantNotification, type Permission, type PicassoAssigned, type PicassoUnassigned, PlacementType, type PlacementTypeWithLiterals, type Properties, type PropertiesChange, type QuerySchedulesOptions, type QuerySchedulesRequest, type QuerySchedulesResponse, RequestedFields, type RequestedFieldsWithLiterals, ResolutionMethod, type ResolutionMethodWithLiterals, type RestoreInfo, Role, type RoleWithLiterals, type Schedule, type ScheduleCancelled, type ScheduleCancelledEnvelope, type ScheduleCloned, type ScheduleClonedEnvelope, type ScheduleCreatedEnvelope, type ScheduleUpdatedEnvelope, type ScheduleUpdatedWithMetadata, type SchedulesQueryBuilder, type SchedulesQueryResult, type ServiceProvisioned, type ServiceRemoved, type SiteCloned, type SiteCreated, SiteCreatedContext, type SiteCreatedContextWithLiterals, type SiteDeleted, type SiteHardDeleted, type SiteMarkedAsTemplate, type SiteMarkedAsWixSite, type SitePropertiesEvent, type SitePropertiesNotification, type SitePublished, type SitePurgedExternally, type SiteRenamed, type SiteTransferred, type SiteUndeleted, type SiteUnpublished, type SiteUrlChanged, type SpecialHourPeriod, State, type StateWithLiterals, Status, type StatusWithLiterals, type StudioAssigned, type StudioUnassigned, type SupportedLanguage, type TimePeriod, type Translation, Trigger, type TriggerWithLiterals, Type, type TypeWithLiterals, type UpdateSchedule, type UpdateScheduleApplicationErrors, type UpdateScheduleOptions, type UpdateScheduleRequest, type UpdateScheduleResponse, type V4SiteCreated, WebhookIdentityType, type WebhookIdentityTypeWithLiterals, cancelSchedule, createSchedule, getSchedule, onScheduleCancelled, onScheduleCloned, onScheduleCreated, onScheduleUpdated, querySchedules, updateSchedule };