import * as directadmin from './directadmin'; import { MXrouteApiClient, MXrouteApiCredentials } from './mxroute-api'; export type { DACredentials } from './directadmin'; export interface ApiManagementCredentials extends MXrouteApiCredentials { backend: 'mxroute-api'; legacy?: directadmin.DACredentials; } export type ManagementCredentials = directadmin.DACredentials | ApiManagementCredentials; interface ManagementAdapters { api?: Partial; legacy?: Partial; } export declare class ManagementCapabilityError extends Error { readonly capability: string; constructor(capability: string); } export declare function createManagementClient(credentials: ManagementCredentials, adapters?: ManagementAdapters): any; export declare function listDomains(creds: ManagementCredentials): Promise; export declare function getDomainInfo(creds: ManagementCredentials, domain: string): Promise; export declare function listEmailAccounts(creds: ManagementCredentials, domain: string): Promise; export declare function getEmailAccountInfo(creds: ManagementCredentials, domain: string, user: string): Promise; export declare function createEmailAccount(creds: ManagementCredentials, domain: string, user: string, password: string, quota?: number): Promise; export declare function deleteEmailAccount(creds: ManagementCredentials, domain: string, user: string): Promise; export declare function changeEmailPassword(creds: ManagementCredentials, domain: string, user: string, password: string): Promise; export declare function changeEmailQuota(creds: ManagementCredentials, domain: string, user: string, quota: number): Promise; export declare function listForwarders(creds: ManagementCredentials, domain: string): Promise; export declare function getForwarderDestination(creds: ManagementCredentials, domain: string, user: string): Promise; export declare function createForwarder(creds: ManagementCredentials, domain: string, user: string, destination: string): Promise; export declare function deleteForwarder(creds: ManagementCredentials, domain: string, user: string): Promise; export declare function getCatchAll(creds: ManagementCredentials, domain: string): Promise; export declare function setCatchAll(creds: ManagementCredentials, domain: string, value: string): Promise; export declare function getQuotaUsage(creds: ManagementCredentials): Promise; export declare function getUserConfig(creds: ManagementCredentials): Promise; export declare function listDomainPointers(creds: ManagementCredentials, domain: string): Promise>; export declare function addDomainPointer(creds: ManagementCredentials, domain: string, pointer: string): Promise; export declare function deleteDomainPointer(creds: ManagementCredentials, domain: string, pointer: string): Promise; export declare function getSpamConfig(creds: ManagementCredentials, domain: string): Promise; export declare function setSpamConfig(creds: ManagementCredentials, domain: string, settings: Record): Promise; export declare function listEmailFilters(creds: ManagementCredentials, domain: string): Promise; export declare function createEmailFilter(creds: ManagementCredentials, domain: string, type: string, value: string): Promise; export declare function deleteEmailFilter(creds: ManagementCredentials, domain: string, filterId: string): Promise; export declare function testAuth(creds: ManagementCredentials): Promise<{ success: boolean; message: string; username?: string; }>; export declare function listAutoresponders(creds: ManagementCredentials, domain: string): Promise; export declare function getAutoresponder(creds: ManagementCredentials, domain: string, user: string): Promise; export declare function createAutoresponder(creds: ManagementCredentials, domain: string, user: string, text: string, cc?: string): Promise; export declare function modifyAutoresponder(creds: ManagementCredentials, domain: string, user: string, text: string, cc?: string): Promise; export declare function deleteAutoresponder(creds: ManagementCredentials, domain: string, user: string): Promise; export declare function listDnsRecords(creds: ManagementCredentials, domain: string): Promise; export declare function addDnsRecord(creds: ManagementCredentials, domain: string, type: string, name: string, value: string, priority?: number): Promise; export declare function deleteDnsRecord(creds: ManagementCredentials, domain: string, type: string, name: string, value: string): Promise; export declare function getDkimKey(creds: ManagementCredentials, domain: string): Promise; export declare function listMailingLists(creds: ManagementCredentials, domain: string): Promise; export declare function getMailingListMembers(creds: ManagementCredentials, domain: string, name: string): Promise; export declare function createMailingList(creds: ManagementCredentials, domain: string, name: string): Promise; export declare function deleteMailingList(creds: ManagementCredentials, domain: string, name: string): Promise; export declare function addMailingListMember(creds: ManagementCredentials, domain: string, name: string, email: string): Promise; export declare function removeMailingListMember(creds: ManagementCredentials, domain: string, name: string, email: string): Promise;