node-ovh-ts
Version:
OVH API wrapper library for TypeScript
170 lines (167 loc) • 12.3 kB
TypeScript
import { ServicesOperationDetachExecutionRequest } from '../models/ServicesOperationDetachExecutionRequest.js';
import { ServicesConsumptionSummary } from '../models/ServicesConsumptionSummary.js';
import { ServicesFormForm } from '../models/ServicesFormForm.js';
import { ServicesFormDescription } from '../models/ServicesFormDescription.js';
import { ServicesExpandedTechnicalDetails } from '../models/ServicesExpandedTechnicalDetails.js';
import { ServicesBillingEngagementEngagementRequestCreation } from '../models/ServicesBillingEngagementEngagementRequestCreation.js';
import { ServicesFormResponse } from '../models/ServicesFormResponse.js';
import { ServicesOperationOrder } from '../models/ServicesOperationOrder.js';
import { ServicesBillingEngagementEngagementFlushOrder } from '../models/ServicesBillingEngagementEngagementFlushOrder.js';
import { OrderCartGenericProductDefinition } from '../models/OrderCartGenericProductDefinition.js';
import { ServicesBillingEngagementEngagement } from '../models/ServicesBillingEngagementEngagement.js';
import { ServicesUpdateService } from '../models/ServicesUpdateService.js';
import { ServicesBillingEngagementEngagementRequest } from '../models/ServicesBillingEngagementEngagementRequest.js';
import { ServicesBillingPricing } from '../models/ServicesBillingPricing.js';
import { ServicesOperationExecutionRequest } from '../models/ServicesOperationExecutionRequest.js';
import { ServicesOperationDetachOptionsDefinition } from '../models/ServicesOperationDetachOptionsDefinition.js';
import { ServicesExpandedService } from '../models/ServicesExpandedService.js';
import { ServicesConsumptionElement } from '../models/ServicesConsumptionElement.js';
import { ServicesBillingEngagementUpdateEndRuleRequest } from '../models/ServicesBillingEngagementUpdateEndRuleRequest.js';
import { ServicesBillingEngagementEngagementFlushRequest } from '../models/ServicesBillingEngagementEngagementFlushRequest.js';
import OVHBase from '../ovh.js';
import '../models/ServicesOperationAddonDetachExecutionRequest.js';
import '../models/OrderPrice.js';
import '../models/OrderCurrencyCodeEnum.js';
import '../models/ServicesConsumptionPricePlanFamily.js';
import '../models/ServicesFormAnswer.js';
import '../models/ServicesFormQuestion.js';
import '../models/ServicesFormAnswerAllowedValue.js';
import '../models/ServicesFormAnswerTypeEnum.js';
import '../models/ServicesExpandedTechnicalBaremetalServer.js';
import '../models/ServicesExpandedTechnicalBaremetalServerServer.js';
import '../models/ServicesExpandedTechnicalBaremetalServerServerExtensionCard.js';
import '../models/ServicesExpandedTechnicalBaremetalServerServerFrame.js';
import '../models/ServicesExpandedTechnicalBaremetalServerServerNetwork.js';
import '../models/ServicesExpandedTechnicalBaremetalServerServerServices.js';
import '../models/ServicesExpandedTechnicalBaremetalServerServerServicesSecureComputingTechnologyEnum.js';
import '../models/ServicesExpandedTechnicalBaremetalServerServerServicesSupportLevelEnum.js';
import '../models/ServicesExpandedTechnicalBaremetalServerServerCpu.js';
import '../models/ServicesExpandedTechnicalBaremetalServerGpu.js';
import '../models/ServicesExpandedTechnicalBaremetalServerGpuMemory.js';
import '../models/ServicesExpandedTechnicalBaremetalServerMemory.js';
import '../models/ServicesExpandedTechnicalBaremetalServerBandwidth.js';
import '../models/ServicesExpandedTechnicalBaremetalServerAggregation.js';
import '../models/ServicesExpandedTechnicalBaremetalServerVrack.js';
import '../models/ServicesExpandedTechnicalBaremetalServerStorage.js';
import '../models/ServicesExpandedTechnicalBaremetalServerStorageDisk.js';
import '../models/ServicesExpandedTechnicalBaremetalServerStorageDiskUsageEnum.js';
import '../models/ServicesExpandedTechnicalBaremetalServerStorageRaid.js';
import '../models/ServicesExpandedTechnicalBaremetalServerStorageRaidTypeEnum.js';
import '../models/ServicesExpandedTechnicalNutanixCluster.js';
import '../models/ServicesExpandedTechnicalNutanixClusterCluster.js';
import '../models/ServicesExpandedTechnicalNutanixClusterService.js';
import '../models/ServicesExpandedTechnicalNutanixClusterLicense.js';
import '../models/ServicesExpandedTechnicalNutanixClusterFeatures.js';
import '../models/OrderOrder.js';
import '../models/OrderOrderDetail.js';
import '../models/OrderReduction.js';
import '../models/OrderReductionContextEnum.js';
import '../models/OrderReductionTypeEnum.js';
import '../models/OrderOrderDetailTypeEnum.js';
import '../models/OrderOrderPrices.js';
import '../models/OrderContract.js';
import '../models/OrderCartGenericProductPricing.js';
import '../models/OrderCartGenericProductPricingCapacitiesEnum.js';
import '../models/OrderCartGenericProductPricingTypeEnum.js';
import '../models/OrderCartGenericProductTypeEnum.js';
import '../models/ServicesBillingEngagementEndRule.js';
import '../models/ServicesBillingEngagementEndStrategyEnum.js';
import '../models/ServicesBillingEngagementEngagementPeriod.js';
import '../models/ServicesUpdateServiceRenew.js';
import '../models/ServicesExpandedRenewModeEnum.js';
import '../models/ServicesExpandedTerminationPolicyEnum.js';
import '../models/ServicesBillingEngagementEngagementRequestOption.js';
import '../models/ServicesBillingPricingEngagementConfiguration.js';
import '../models/ServicesBillingEngagementTypeEnum.js';
import '../models/ServicesExpandedBilling.js';
import '../models/ServicesExpandedEngagementSummary.js';
import '../models/ServicesExpandedEngagementRequestSummary.js';
import '../models/ServicesExpandedRenew.js';
import '../models/ServicesExpandedRenewCurrent.js';
import '../models/ServicesExpandedRenewCapacities.js';
import '../models/ServicesExpandedPlan.js';
import '../models/ServicesExpandedLifecycle.js';
import '../models/ServicesExpandedLifecycleCapacities.js';
import '../models/ServicesExpandedLifecycleActionEnum.js';
import '../models/ServicesExpandedLifecycleCurrent.js';
import '../models/ServicesExpandedLifecycleStateEnum.js';
import '../models/ServicesExpandedGroup.js';
import '../models/ServicesExpandedRoute.js';
import '../models/ServicesExpandedResource.js';
import '../models/ServicesExpandedResellingProviderEnum.js';
import '../models/ServicesExpandedResourceStateEnum.js';
import '../models/ServicesExpandedProduct.js';
import '../models/ServicesExpandedCustomer.js';
import '../models/ServicesExpandedCustomerContact.js';
import '../models/ServicesExpandedCustomerContactTypeEnum.js';
import '../models/ServicesConsumptionDetail.js';
import '../endpoints.js';
declare class ServicesHandler {
ovh: OVHBase;
constructor(ovh: OVHBase);
/** List available services */
list: () => Promise<number[]>;
/** Get details about a service */
getByServiceId: (serviceId: number) => Promise<ServicesExpandedService>;
/** Update service information */
updateByServiceId: (serviceId: number, body: ServicesUpdateService) => Promise<void>;
/** Get engagement details */
getBillingEngagementByServiceId: (serviceId: number) => Promise<ServicesBillingEngagementEngagement>;
/** List all available engagements a given service can subscribe to */
listBillingEngagementAvailableByServiceId: (serviceId: number) => Promise<ServicesBillingPricing[]>;
/** Change your Engagement end rules */
updateBillingEngagementEndRuleByServiceId: (serviceId: number, body: ServicesBillingEngagementUpdateEndRuleRequest) => Promise<void>;
/** Flush the engagement of this service */
postBillingEngagementFlushByServiceId: (serviceId: number, body: ServicesBillingEngagementEngagementFlushRequest) => Promise<ServicesBillingEngagementEngagementFlushOrder>;
/** Delete the ongoing Engagement request on this Service */
deleteBillingEngagementRequestByServiceId: (serviceId: number) => Promise<void>;
/** Get the ongoing Engagement request on this Service */
getBillingEngagementRequestByServiceId: (serviceId: number) => Promise<ServicesBillingEngagementEngagementRequest>;
/** Request an Engagement on this Service */
postBillingEngagementRequestByServiceId: (serviceId: number, body: ServicesBillingEngagementEngagementRequestCreation) => Promise<ServicesBillingEngagementEngagementRequest>;
/** Get a summary of the ongoing consumption of your service */
getConsumptionByServiceId: (serviceId: number) => Promise<ServicesConsumptionSummary>;
/** Get each resource consumed by your service */
getConsumptionElementByServiceId: (serviceId: number) => Promise<ServicesConsumptionElement[]>;
/** Get a summary of the forecasted consumption of your service */
getConsumptionForecastByServiceId: (serviceId: number) => Promise<ServicesConsumptionSummary>;
/** Get each resource forecasted consumption of your service */
getConsumptionForecastElementByServiceId: (serviceId: number) => Promise<ServicesConsumptionElement[]>;
/** List consumption history of your service */
listConsumptionHistoryByServiceId: (serviceId: number) => Promise<number[]>;
/** Get a summary of the past consumption of your service */
getConsumptionHistoryByServiceIdAndId: (id: number, serviceId: number) => Promise<ServicesConsumptionSummary>;
/** Get each resource consumed for the given history */
getConsumptionHistoryElementByServiceIdAndId: (id: number, serviceId: number) => Promise<ServicesConsumptionElement[]>;
/** List offers this option can be converted to */
listDetachByServiceId: (serviceId: number) => Promise<OrderCartGenericProductDefinition[]>;
/** View an offer this option can be converted to */
getDetachByServiceIdAndPlanCode: (planCode: string, serviceId: number) => Promise<OrderCartGenericProductDefinition>;
/** Perform the migration to a standalone offer. May require you to pay an Order */
postDetachExecuteByServiceIdAndPlanCode: (planCode: string, serviceId: number, body: ServicesOperationDetachExecutionRequest) => Promise<ServicesOperationOrder>;
/** View all offers compatible for the detachment for the given option offer */
getDetachOptionsByServiceIdAndPlanCode: (planCode: string, serviceId: number) => Promise<ServicesOperationDetachOptionsDefinition[]>;
/** Simulate the migration to a standalone offer. It won't generate any Order or issue any changes to your Service */
postDetachSimulateByServiceIdAndPlanCode: (planCode: string, serviceId: number, body: ServicesOperationDetachExecutionRequest) => Promise<ServicesOperationOrder>;
/** List available forms for service */
listFormByServiceId: (serviceId: number) => Promise<ServicesFormDescription[]>;
/** Get specified form description for service */
getFormByServiceIdAndFormName: (formName: string, serviceId: number) => Promise<ServicesFormDescription>;
/** Post answers to the form for your service */
postFormAnswerByServiceIdAndFormName: (formName: string, serviceId: number, body: ServicesFormForm) => Promise<ServicesFormResponse>;
/** Get options of a service */
getOptionsByServiceId: (serviceId: number) => Promise<ServicesExpandedService[]>;
/** Get possible renew periods of a service */
getRenewPeriodCapacitiesByServiceId: (serviceId: number) => Promise<number[]>;
/** View the technical details of the service */
getTechnicalDetailsByServiceId: (serviceId: number) => Promise<ServicesExpandedTechnicalDetails>;
/** List offers this option can be converted to */
listUpgradeByServiceId: (serviceId: number) => Promise<OrderCartGenericProductDefinition[]>;
/** View an offer this option can be converted to */
getUpgradeByServiceIdAndPlanCode: (planCode: string, serviceId: number) => Promise<OrderCartGenericProductDefinition>;
/** Perform the migration to another offer. May require you to pay an Order */
postUpgradeExecuteByServiceIdAndPlanCode: (planCode: string, serviceId: number, body: ServicesOperationExecutionRequest) => Promise<ServicesOperationOrder>;
/** Simulate the conversion to another offer. It won't generate any Order or issue any changes to your Service */
postUpgradeSimulateByServiceIdAndPlanCode: (planCode: string, serviceId: number, body: ServicesOperationExecutionRequest) => Promise<ServicesOperationOrder>;
}
export { ServicesHandler };