UNPKG

node-ovh-ts

Version:

OVH API wrapper library for TypeScript

347 lines (344 loc) 21.2 kB
import { EmailDomainTaskFilter } from '../models/EmailDomainTaskFilter.js'; import { EmailDomainAcl } from '../models/EmailDomainAcl.js'; import { EmailDomainDomainService } from '../models/EmailDomainDomainService.js'; import { DomainDomainFilterActionEnum } from '../models/DomainDomainFilterActionEnum.js'; import { EmailDomainRedirectionChangeRedirectionCreation } from '../models/EmailDomainRedirectionChangeRedirectionCreation.js'; import { EmailDomainRedirectionCreation } from '../models/EmailDomainRedirectionCreation.js'; import { EmailDomainMigrationService } from '../models/EmailDomainMigrationService.js'; import { EmailDomainMigrationAccount } from '../models/EmailDomainMigrationAccount.js'; import { ServicesService } from '../models/ServicesService.js'; import { DomainDomainMXFilterEnum } from '../models/DomainDomainMXFilterEnum.js'; import { EmailDomainTaskSpecialAccount } from '../models/EmailDomainTaskSpecialAccount.js'; import { EmailDomainModerator } from '../models/EmailDomainModerator.js'; import { DomainDomainSummary } from '../models/DomainDomainSummary.js'; import { DomainZoneRecord } from '../models/DomainZoneRecord.js'; import { EmailDomainAccountDelegated } from '../models/EmailDomainAccountDelegated.js'; import { DomainDomainFilterOperandEnum } from '../models/DomainDomainFilterOperandEnum.js'; import { EmailDomainFilter } from '../models/EmailDomainFilter.js'; import { EmailDomainRedirectionGlobal } from '../models/EmailDomainRedirectionGlobal.js'; import { DomainDomainMlOptionsStruct } from '../models/DomainDomainMlOptionsStruct.js'; import { DomainDomainMlLanguageEnum } from '../models/DomainDomainMlLanguageEnum.js'; import { EmailDomainMigrationCheckStruct } from '../models/EmailDomainMigrationCheckStruct.js'; import { DomainDomainUsageAccountStruct } from '../models/DomainDomainUsageAccountStruct.js'; import { EmailDomainMailingList } from '../models/EmailDomainMailingList.js'; import { EmailDomainResponderAccount } from '../models/EmailDomainResponderAccount.js'; import { DomainDomainQuota } from '../models/DomainDomainQuota.js'; import { EmailDomainAccount } from '../models/EmailDomainAccount.js'; import { EmailDomainSubscriber } from '../models/EmailDomainSubscriber.js'; import { EmailDomainTaskMl } from '../models/EmailDomainTaskMl.js'; import { EmailDomainRule } from '../models/EmailDomainRule.js'; import { ServiceTerminationReasonEnum } from '../models/ServiceTerminationReasonEnum.js'; import { EmailDomainResponder } from '../models/EmailDomainResponder.js'; import { DomainDomainMlLimits } from '../models/DomainDomainMlLimits.js'; import { EmailDomainDelegation } from '../models/EmailDomainDelegation.js'; import { EmailDomainTaskPop } from '../models/EmailDomainTaskPop.js'; import OVHBase from '../ovh.js'; import '../models/DomainDomainStatusEnum.js'; import '../models/EmailDomainMigrationServiceType.js'; import '../models/ServiceStateEnum.js'; import '../models/ServiceRenewType.js'; import '../models/ServiceRenewalTypeEnum.js'; import '../models/DomainDomainSpecialAccountActionEnum.js'; import '../models/DomainDomainSpecialAccountTypeEnum.js'; import '../models/ZoneNamedResolutionFieldTypeEnum.js'; import '../models/EmailDomainMigrationCheckResultStruct.js'; import '../models/EmailDomainMigrationCheckCodeEnum.js'; import '../models/DomainDomainPopActionEnum.js'; import '../endpoints.js'; declare class EmailDomainHandler { ovh: OVHBase; constructor(ovh: OVHBase); /** List available services */ listDomain: () => Promise<string[]>; /** Delegated emails */ getDomainDelegatedAccount: () => Promise<string[]>; /** Get this object properties */ getDomainDelegatedAccountByEmail: (email: string) => Promise<EmailDomainAccountDelegated>; /** Alter this object properties */ updateDomainDelegatedAccountByEmail: (email: string, body: EmailDomainAccountDelegated) => Promise<void>; /** Change mailbox password (length : [9;30], no space at begin and end, no accent) */ updateDomainDelegatedAccountPasswordByEmail: (email: string, body: { password: string; }) => Promise<EmailDomainTaskPop>; /** Get filters */ getDomainDelegatedAccountFilterByEmail: (email: string) => Promise<string[]>; /** Create new filter for account */ createDomainDelegatedAccountFilterByEmail: (email: string, body: { action: DomainDomainFilterActionEnum; actionParam?: string; active: boolean; header: string; name: string; operand: DomainDomainFilterOperandEnum; priority: number; value: string; }) => Promise<EmailDomainTaskFilter>; /** Delete an existing filter */ deleteDomainDelegatedAccountFilterByEmailAndName: (email: string, name: string) => Promise<EmailDomainTaskFilter[]>; /** Get this object properties */ getDomainDelegatedAccountFilterByEmailAndName: (email: string, name: string) => Promise<EmailDomainFilter>; /** Change filter activity */ updateDomainDelegatedAccountFilterActivityByEmailAndName: (email: string, name: string, body: { activity: boolean; }) => Promise<EmailDomainTaskFilter>; /** Change filter priority */ updateDomainDelegatedAccountFilterPriorityByEmailAndName: (email: string, name: string, body: { priority: number; }) => Promise<EmailDomainTaskFilter>; /** Get rules */ getDomainDelegatedAccountFilterRuleByEmailAndName: (email: string, name: string) => Promise<number[]>; /** Create new rule for filter */ createDomainDelegatedAccountFilterRuleByEmailAndName: (email: string, name: string, body: { header: string; operand: DomainDomainFilterOperandEnum; value: string; }) => Promise<EmailDomainTaskFilter>; /** Delete an existing filter */ deleteDomainDelegatedAccountFilterRuleByEmailAndNameAndId: (email: string, id: number, name: string) => Promise<EmailDomainTaskFilter[]>; /** Get this object properties */ getDomainDelegatedAccountFilterRuleByEmailAndNameAndId: (email: string, id: number, name: string) => Promise<EmailDomainRule>; /** Delete an existing responder in server */ deleteDomainDelegatedAccountResponderByEmail: (email: string) => Promise<EmailDomainTaskSpecialAccount>; /** Get this object properties */ getDomainDelegatedAccountResponderByEmail: (email: string) => Promise<EmailDomainResponderAccount>; /** Create new responder in server */ createDomainDelegatedAccountResponderByEmail: (email: string, body: { content: string; copy: boolean; copyTo?: string; from?: Date; to?: Date; }) => Promise<EmailDomainTaskSpecialAccount>; /** Alter this object properties */ updateDomainDelegatedAccountResponderByEmail: (email: string, body: EmailDomainResponderAccount) => Promise<void>; /** Update usage of account */ updateDomainDelegatedAccountUsageByEmail: (email: string) => Promise<void>; /** usage of account */ postDomainDelegatedAccountUsageByEmail: (email: string) => Promise<DomainDomainUsageAccountStruct>; /** Get limits of mailing list */ getDomainMailingListLimits: () => Promise<DomainDomainMlLimits>; /** Get this object properties */ getDomainByDomain: (domain: string) => Promise<EmailDomainDomainService>; /** Get accounts */ getDomainAccountByDomain: (domain: string) => Promise<string[]>; /** Create new mailbox in server */ createDomainAccountByDomain: (domain: string, body: { accountName: string; description?: string; password: string; size?: number; }) => Promise<EmailDomainTaskPop>; /** Delete an existing mailbox in server */ deleteDomainAccountByDomainAndAccountName: (accountName: string, domain: string) => Promise<EmailDomainTaskPop>; /** Get this object properties */ getDomainAccountByDomainAndAccountName: (accountName: string, domain: string) => Promise<EmailDomainAccount>; /** Alter this object properties */ updateDomainAccountByDomainAndAccountName: (accountName: string, domain: string, body: EmailDomainAccount) => Promise<void>; /** Change mailbox password (length : [9;30], no space at begin and end, no accent) */ updateDomainAccountPasswordByDomainAndAccountName: (accountName: string, domain: string, body: { password: string; }) => Promise<EmailDomainTaskPop>; /** Get delegations */ getDomainAccountDelegationByDomainAndAccountName: (accountName: string, domain: string) => Promise<string[]>; /** Create delegation for this account */ createDomainAccountDelegationByDomainAndAccountName: (accountName: string, domain: string, body: { accountId: string; }) => Promise<string>; /** Delete an existing delegation */ deleteDomainAccountDelegationByDomainAndAccountNameAndAccountId: (accountId: string, accountName: string, domain: string) => Promise<string>; /** Get this object properties */ getDomainAccountDelegationByDomainAndAccountNameAndAccountId: (accountId: string, accountName: string, domain: string) => Promise<EmailDomainDelegation>; /** Get filters */ getDomainAccountFilterByDomainAndAccountName: (accountName: string, domain: string) => Promise<string[]>; /** Create new filter for account */ createDomainAccountFilterByDomainAndAccountName: (accountName: string, domain: string, body: { action: DomainDomainFilterActionEnum; actionParam?: string; active: boolean; header: string; name: string; operand: DomainDomainFilterOperandEnum; priority: number; value: string; }) => Promise<EmailDomainTaskFilter>; /** Delete an existing filter */ deleteDomainAccountFilterByDomainAndAccountNameAndName: (accountName: string, domain: string, name: string) => Promise<EmailDomainTaskFilter[]>; /** Get this object properties */ getDomainAccountFilterByDomainAndAccountNameAndName: (accountName: string, domain: string, name: string) => Promise<EmailDomainFilter>; /** Change filter activity */ updateDomainAccountFilterActivityByDomainAndAccountNameAndName: (accountName: string, domain: string, name: string, body: { activity: boolean; }) => Promise<EmailDomainTaskFilter>; /** Change filter priority */ updateDomainAccountFilterPriorityByDomainAndAccountNameAndName: (accountName: string, domain: string, name: string, body: { priority: number; }) => Promise<EmailDomainTaskFilter>; /** Get rules */ getDomainAccountFilterRuleByDomainAndAccountNameAndName: (accountName: string, domain: string, name: string) => Promise<number[]>; /** Create new rule for filter */ createDomainAccountFilterRuleByDomainAndAccountNameAndName: (accountName: string, domain: string, name: string, body: { header: string; operand: DomainDomainFilterOperandEnum; value: string; }) => Promise<EmailDomainTaskFilter>; /** Delete an existing filter */ deleteDomainAccountFilterRuleByDomainAndAccountNameAndNameAndId: (accountName: string, domain: string, id: number, name: string) => Promise<EmailDomainTaskFilter[]>; /** Get this object properties */ getDomainAccountFilterRuleByDomainAndAccountNameAndNameAndId: (accountName: string, domain: string, id: number, name: string) => Promise<EmailDomainRule>; /** Get migration service */ getDomainAccountMigrateByDomainAndAccountName: (accountName: string, domain: string) => Promise<string[]>; /** Get this object properties */ getDomainAccountMigrateByDomainAndAccountNameAndDestinationServiceName: (accountName: string, destinationServiceName: string, domain: string) => Promise<EmailDomainMigrationService>; /** List of email address available for migration */ listDomainAccountMigrateDestinationEmailAddressByDomainAndAccountNameAndDestinationServiceName: (accountName: string, destinationServiceName: string, domain: string) => Promise<string[]>; /** Get this object properties */ getDomainAccountMigrateDestinationEmailAddressByDomainAndAccountNameAndDestinationServiceNameAndDestinationEmailAddress: (accountName: string, destinationEmailAddress: string, destinationServiceName: string, domain: string) => Promise<EmailDomainMigrationAccount>; /** Check if it's possible to migrate */ checkDomainAccountMigrateDestinationEmailAddressMigrateByDomainAndAccountNameAndDestinationServiceNameAndDestinationEmailAddress: (accountName: string, destinationEmailAddress: string, destinationServiceName: string, domain: string) => Promise<EmailDomainMigrationCheckStruct>; /** Migrate account to destination account */ postDomainAccountMigrateDestinationEmailAddressMigrateByDomainAndAccountNameAndDestinationServiceNameAndDestinationEmailAddress: (accountName: string, destinationEmailAddress: string, destinationServiceName: string, domain: string, body: { password: string; }) => Promise<EmailDomainTaskPop>; /** Update usage of account */ updateDomainAccountUsageByDomainAndAccountName: (accountName: string, domain: string) => Promise<void>; /** usage of account */ getDomainAccountUsageByDomainAndAccountName: (accountName: string, domain: string) => Promise<DomainDomainUsageAccountStruct>; /** Get ACL on your domain */ getDomainAclByDomain: (domain: string) => Promise<string[]>; /** Create new ACL */ createDomainAclByDomain: (domain: string, body: { accountId: string; }) => Promise<EmailDomainAcl>; /** Delete ACL */ deleteDomainAclByDomainAndAccountId: (accountId: string, domain: string) => Promise<void>; /** Get this object properties */ getDomainAclByDomainAndAccountId: (accountId: string, domain: string) => Promise<EmailDomainAcl>; /** Launch a contact change procedure */ launchDomainChangeContactByDomain: (domain: string, body: { contactAdmin?: string; contactBilling?: string; contactTech?: string; }) => Promise<number[]>; /** Change MX filter, so change MX DNS records */ updateDomainDnsMXFilterByDomain: (domain: string, body: { customTarget?: string; mxFilter: DomainDomainMXFilterEnum; subDomain?: string; }) => Promise<void>; /** Confirm termination of your email service */ confirmDomainTerminationByDomain: (domain: string, body: { commentary?: string; reason?: ServiceTerminationReasonEnum; token: string; }) => Promise<string>; /** Domain MX filter */ getDomainDnsMXFilterByDomain: (domain: string) => Promise<DomainDomainMXFilterEnum>; /** Domain MX records */ getDomainDnsMXRecordsByDomain: (domain: string) => Promise<string[]>; /** Get mailing lists */ getDomainMailingListByDomain: (domain: string) => Promise<string[]>; /** Create new mailingList */ createDomainMailingListByDomain: (domain: string, body: { language: DomainDomainMlLanguageEnum; name: string; options: DomainDomainMlOptionsStruct; ownerEmail: string; replyTo?: string; }) => Promise<EmailDomainTaskMl>; /** Delete existing Mailing list */ deleteDomainMailingListByDomainAndName: (domain: string, name: string) => Promise<EmailDomainTaskMl>; /** Get this object properties */ getDomainMailingListByDomainAndName: (domain: string, name: string) => Promise<EmailDomainMailingList>; /** Alter this object properties */ updateDomainMailingListByDomainAndName: (domain: string, name: string, body: EmailDomainMailingList) => Promise<void>; /** Change mailing list options */ updateDomainMailingListOptionsByDomainAndName: (domain: string, name: string, body: { options: DomainDomainMlOptionsStruct; }) => Promise<EmailDomainTaskMl>; /** List of moderators */ listDomainMailingModeratorByDomainAndName: (domain: string, name: string) => Promise<string[]>; /** Add moderator to mailing list */ addDomainMailingListModeratorByDomainAndName: (domain: string, name: string, body: { email: string; }) => Promise<EmailDomainTaskMl>; /** Delete existing moderator */ deleteDomainMailingListModeratorByDomainAndNameAndEmail: (domain: string, email: string, name: string) => Promise<EmailDomainTaskMl>; /** Get this object properties */ getDomainMailingListModeratorByDomainAndNameAndEmail: (domain: string, email: string, name: string) => Promise<EmailDomainModerator>; /** Send moderators list and subscribers list of this mailing list by email */ sendDomainMailingListListByEmailByDomainAndName: (domain: string, name: string, body: { email: string; }) => Promise<EmailDomainTaskMl>; /** List of subscribers */ listDomainMailingSubscriberByDomainAndName: (domain: string, name: string) => Promise<string[]>; /** Add subscriber to mailing list */ addDomainMailingListSubscriberByDomainAndName: (domain: string, name: string, body: { email: string; }) => Promise<EmailDomainTaskMl>; /** Delete existing subscriber */ deleteDomainMailingListSubscriberByDomainAndNameAndEmail: (domain: string, email: string, name: string) => Promise<EmailDomainTaskMl>; /** Get this object properties */ getDomainMailingListSubscriberByDomainAndNameAndEmail: (domain: string, email: string, name: string) => Promise<EmailDomainSubscriber>; /** Create delegation of domain with same nic than V3 */ createDomainMigrateDelegationV3toV6ByDomain: (domain: string) => Promise<void>; /** List all quotas for this domain */ listDomainQuotaByDomain: (domain: string) => Promise<DomainDomainQuota>; /** Recommended domain DNS records */ getDomainRecommendedDNSRecordsByDomain: (domain: string) => Promise<DomainZoneRecord[]>; /** Get redirections */ getDomainRedirectionByDomain: (domain: string) => Promise<string[]>; /** Create new redirection in server */ createDomainRedirectionByDomain: (domain: string, body: EmailDomainRedirectionCreation) => Promise<EmailDomainTaskSpecialAccount>; /** Delete an existing redirection in server */ deleteDomainRedirectionByDomainAndId: (domain: string, id: string) => Promise<EmailDomainTaskSpecialAccount>; /** Get this object properties */ getDomainRedirectionByDomainAndId: (domain: string, id: string) => Promise<EmailDomainRedirectionGlobal>; /** Change redirection */ updateDomainRedirectionRedirectionByDomainAndId: (domain: string, id: string, body: EmailDomainRedirectionChangeRedirectionCreation) => Promise<EmailDomainTaskSpecialAccount>; /** Get responders */ getDomainResponderByDomain: (domain: string) => Promise<string[]>; /** Create new responder in server */ createDomainResponderByDomain: (domain: string, body: { account: string; content: string; copy: boolean; copyTo?: string; from?: Date; to?: Date; }) => Promise<EmailDomainTaskSpecialAccount>; /** Delete an existing responder in server */ deleteDomainResponderByDomainAndAccount: (account: string, domain: string) => Promise<EmailDomainTaskSpecialAccount>; /** Get this object properties */ getDomainResponderByDomainAndAccount: (account: string, domain: string) => Promise<EmailDomainResponder>; /** Alter this object properties */ updateDomainResponderByDomainAndAccount: (account: string, domain: string, body: EmailDomainResponder) => Promise<void>; /** Get this object properties */ getDomainServiceInfosByDomain: (domain: string) => Promise<ServicesService>; /** Alter this object properties */ updateDomainServiceInfosByDomain: (domain: string, body: ServicesService) => Promise<void>; /** Summary for this domain */ getDomainSummaryByDomain: (domain: string) => Promise<DomainDomainSummary>; /** Get account tasks */ getDomainTaskAccountByDomain: (domain: string) => Promise<number[]>; /** Get this object properties */ getDomainTaskAccountByDomainAndId: (domain: string, id: number) => Promise<EmailDomainTaskPop>; /** Get filter tasks */ getDomainTaskFilterByDomain: (domain: string) => Promise<number[]>; /** Get this object properties */ getDomainTaskFilterByDomainAndId: (domain: string, id: number) => Promise<EmailDomainTaskFilter>; /** Get Mailing List tasks */ getDomainTaskMailinglistByDomain: (domain: string) => Promise<number[]>; /** Get this object properties */ getDomainTaskMailinglistByDomainAndId: (domain: string, id: number) => Promise<EmailDomainTaskMl>; /** Get redirection tasks */ getDomainTaskRedirectionByDomain: (domain: string) => Promise<string[]>; /** Get this object properties */ getDomainTaskRedirectionByDomainAndId: (domain: string, id: string) => Promise<EmailDomainTaskSpecialAccount>; /** Get responder tasks */ getDomainTaskResponderByDomain: (domain: string) => Promise<number[]>; /** Get this object properties */ getDomainTaskResponderByDomainAndId: (domain: string, id: number) => Promise<EmailDomainTaskSpecialAccount>; /** Terminate your email service */ postDomainTerminateByDomain: (domain: string) => Promise<string>; } export { EmailDomainHandler };