ts-mailcow-api
Version:
TypeScript wrapper for the mailcow API.
32 lines (31 loc) • 1.41 kB
TypeScript
import { AddOAuthClientRequest, DeleteOAuthClientRequest, GetOAuthClientRequest, MailcowResponse, OAuthClient } from '../types';
import MailcowClient from '../index';
/**
* Interface for all OAuth2 Client endpoints related to email handling in Mailcow.
*/
export interface OAuth2Endpoints {
/**
* Adds a new OAuth client.
* @param payload - Object containing the redirect URI for the OAuth client.
* @returns A promise that resolves to a response indicating success or failure.
*/
add(payload: AddOAuthClientRequest): Promise<MailcowResponse>;
/**
* Deletes specified OAuth clients.
* @param payload - Object containing a list of OAuth client IDs to delete.
* @returns A promise that resolves to a response indicating success or failure.
*/
delete(payload: DeleteOAuthClientRequest): Promise<MailcowResponse>;
/**
* Retrieves an OAuth client by ID or all clients.
* @param payload - Object containing the OAuth client ID or 'all' to retrieve all clients.
* @returns A promise that resolves to an array of `OAuthClient` objects.
*/
get(payload: GetOAuthClientRequest): Promise<OAuthClient[]>;
}
/**
* Binder function between the MailcowClient class and the OAuth2Endpoints.
* @param bind - The MailcowClient instance to bind.
* @internal
*/
export declare function oauth2Endpoints(bind: MailcowClient): OAuth2Endpoints;