import { IHubSchedule, IHubScheduleResponse } from "../core/types/IHubSchedule"; import type { IUserRequestOptions } from "@esri/arcgis-rest-request"; import { IHubRequestOptions } from "../hub-types"; import { IHubEditableContent } from "../core/types/IHubEditableContent"; import { AccessLevel } from "../core/types/types"; /** * Get the schedule for an item. If no schedule is found, returns null. * @param itemId The item to get the schedule for * @param requestOptions The request options needed to get the HubApiUrl * @returns The schedule for the item OR null if no schedule is set */ export declare const getSchedule: (itemId: string, requestOptions: IUserRequestOptions) => Promise; /** * Set the schedule for an item * @param itemId The item to set the schedule for * @param schedule The schedule to set * @param requestOptions The request options needed to get the HubApiUrl */ export declare const setSchedule: (itemId: string, schedule: IHubSchedule, requestOptions: IUserRequestOptions) => Promise; /** * Delete the schedule for an item * @param itemId The item to delete the schedule for * @param requestOptions The request options needed to get the HubApiUrl */ export declare const deleteSchedule: (itemId: string, requestOptions: IUserRequestOptions) => Promise; /** * Checks if the content schedule should be updated and updates it if necessary * @param content The content to check and update the schedule for (should include any new schedule information) * @param requestOptions The request options needed to get the HubApiUrl */ export declare const maybeUpdateSchedule: (content: IHubEditableContent, requestOptions: IUserRequestOptions) => Promise; /** * To be used before calling any of the schedule functions in order to prevent fetch * requests to scheduler API from portal/enterprise * * Note: After a discussion w/ Dave, we decided this check is preferred to passing the context * into functions that would need checkPermission * @param requestOptions The request options needed to get the HubApiUrl * @returns Whether or not the scheduling feature is available */ export declare const isDownloadSchedulingAvailable: (requestOptions: IHubRequestOptions, access: AccessLevel) => boolean;