crisp-api
Version:
Crisp API wrapper for Node - official, maintained by Crisp
75 lines (63 loc) • 1.86 kB
text/typescript
/*
* This file is part of node-crisp-api
*
* Copyright (c) 2025 Crisp IM SAS
* All rights belong to Crisp IM SAS
*/
/**************************************************************************
* IMPORTS
***************************************************************************/
// PROJECT: RESOURCES
import BaseResource from "./BaseResource";
/**************************************************************************
* TYPES
***************************************************************************/
export type WebsiteAvailabilityStatus = {
status?: string;
since?: number;
}
export type WebsiteAvailabilityOperator = {
user_id?: string;
type?: string;
time?: WebsiteAvailabilityOperatorTime;
}
export type WebsiteAvailabilityOperatorTime = {
for?: number;
since?: number;
}
/**************************************************************************
* CLASSES
***************************************************************************/
/**
* Crisp WebsiteAvailability Resource
*/
class WebsiteAvailability extends BaseResource {
/**
* Get Website Availability Status
*/
getWebsiteAvailabilityStatus(
websiteID: string
): Promise<WebsiteAvailabilityStatus> {
return this.crisp.get(
this.crisp.prepareRestUrl([
"website", websiteID, "availability", "status"
])
);
};
/**
* List Website Operator Availabilities
*/
listWebsiteOperatorAvailabilities(
websiteID: string
): Promise<WebsiteAvailabilityOperator[]> {
return this.crisp.get(
this.crisp.prepareRestUrl([
"website", websiteID, "availability", "operators"
])
);
};
}
/**************************************************************************
* EXPORTS
***************************************************************************/
export default WebsiteAvailability;