@lusc/fastmail-masked-email
Version:
A library for creating, deleting, and updating Fastmail masked emails
27 lines (26 loc) • 1.13 kB
TypeScript
import { type CreateOptions, type MaskedEmailState, type Options, type Session } from './schemas.js';
export declare class MaskedEmail {
private readonly details;
private readonly session;
static create(options?: CreateOptions, session?: Session): Promise<MaskedEmail>;
static create(session: Session): Promise<MaskedEmail>;
static findById(id: string, session?: Session): Promise<MaskedEmail>;
static findByEmail(emailAddress: string, session?: Session): Promise<MaskedEmail>;
static getAllEmails(session: Session): Promise<MaskedEmail[]>;
static getAllEmails(ids?: string[], session?: Session): Promise<MaskedEmail[]>;
private constructor();
get email(): string;
get id(): string;
get createdAt(): Date;
get createdBy(): string;
get lastMessageAt(): Date | undefined;
get url(): string | undefined;
get forDomain(): string;
get description(): string;
get state(): MaskedEmailState;
update(options: Options): Promise<this>;
delete(): Promise<this>;
disable(): Promise<this>;
enable(): Promise<this>;
permanentlyDelete(): Promise<void>;
}