ts-mailcow-api
Version:
TypeScript wrapper for the mailcow API.
32 lines (31 loc) • 1.43 kB
TypeScript
import { DeleteQuarantineRequest, EditQuarantineItemRequest, MailcowResponse, QuarantineItem } from '../types';
import MailcowClient from '../index';
/**
* Interface for all Quarantine endpoints related to email handling in Mailcow.
*/
export interface QuarantineEndpoints {
/**
* Deletes emails from the quarantine.
* @param payload - An array of email IDs to delete from quarantine.
* @returns A promise that resolves to the Mailcow API response indicating success or failure.
*/
delete(payload: DeleteQuarantineRequest): Promise<MailcowResponse>;
/**
* Acts on quarantined emails: release them to the recipient's inbox
* or learn them as ham to improve future Rspamd filtering.
* @param payload - The IDs to act on and the action to take.
* @returns A promise that resolves to the Mailcow API response indicating success or failure.
*/
edit(payload: EditQuarantineItemRequest): Promise<MailcowResponse>;
/**
* Retrieves all emails currently held in quarantine.
* @returns A promise that resolves to an array of `QuarantineItem` representing each quarantined email.
*/
get(): Promise<QuarantineItem[]>;
}
/**
* Binder function between the MailcowClient class and the QuarantineEndpoints.
* @param bind - The MailcowClient instance to bind.
* @internal
*/
export declare function quarantineEndpoints(bind: MailcowClient): QuarantineEndpoints;