import type { MailboxManagementTypes } from "@cargo-ai/types"; import { z } from "zod"; import type { ApiType } from "../types.js"; export declare namespace MailboxManagement { type MailboxProviderSlug = MailboxManagementTypes.MailboxProviderSlug; type MailboxType = MailboxManagementTypes.MailboxType; type MailboxTransportSlug = MailboxManagementTypes.MailboxTransportSlug; type MailboxStatus = MailboxManagementTypes.MailboxStatus; type MailboxWarmupStatus = MailboxManagementTypes.MailboxWarmupStatus; type MessageStatus = MailboxManagementTypes.MessageStatus; type EventKind = MailboxManagementTypes.EventKind; type MessageListStatus = MailboxManagementTypes.MessageListStatus; type SuppressionReason = MailboxManagementTypes.SuppressionReason; type Mailbox = ApiType; type Message = ApiType; type Event = ApiType; type Thread = ApiType; type Suppression = ApiType; const mailboxKeys: { all: readonly ["mailboxManagement", "mailboxes"]; list: () => readonly ["mailboxManagement", "mailboxes", "list"]; get: (uuid: string) => readonly ["mailboxManagement", "mailboxes", "get", string]; sendAllowance: (uuid: string) => readonly ["mailboxManagement", "mailboxes", "send-allowance", string]; warmupStats: (uuid: string) => readonly ["mailboxManagement", "mailboxes", "warmup-stats", string]; }; const messageKeys: { all: readonly ["mailboxManagement", "messages"]; list: (payload?: Api.ListMessagesPayload) => readonly ["mailboxManagement", "messages", "list", Api.ListMessagesPayload | undefined]; get: (uuid: string) => readonly ["mailboxManagement", "messages", "get", string]; }; const threadKeys: { all: readonly ["mailboxManagement", "threads"]; list: (payload?: Api.ListThreadsPayload) => readonly ["mailboxManagement", "threads", "list", Api.ListThreadsPayload | undefined]; get: (uuid: string) => readonly ["mailboxManagement", "threads", "get", string]; }; const eventKeys: { all: readonly ["mailboxManagement", "events"]; list: (payload?: Api.ListEventsPayload) => readonly ["mailboxManagement", "events", "list", Api.ListEventsPayload | undefined]; }; const suppressionKeys: { all: readonly ["mailboxManagement", "suppressions"]; list: (payload?: Api.ListSuppressionsPayload) => readonly ["mailboxManagement", "suppressions", "list", Api.ListSuppressionsPayload | undefined]; }; const pricingKeys: { all: readonly ["mailboxManagement", "pricing"]; get: () => readonly ["mailboxManagement", "pricing", "get"]; }; namespace Api { type ListMailboxesPayload = { domainUuid?: string; folderUuid?: string | null; statuses?: MailboxStatus[]; limit?: number; offset?: number; }; type ListMailboxesResult = { mailboxes: Mailbox[]; }; type GetMailboxResult = { mailbox: Mailbox; }; type CreateMailboxPayload = { domainUuid: string; type: MailboxType; /** Local part of the address, e.g. `jane` for jane@acme.com. */ username: string; firstName: string; lastName: string; signature?: string; folderUuid?: string | null; }; type CreateMailboxResult = { mailbox: Mailbox; }; const zodCreateMailboxErrorReason: z.ZodEnum<{ folderNotFound: "folderNotFound"; notEnoughCredits: "notEnoughCredits"; domainNotFound: "domainNotFound"; domainNotActive: "domainNotActive"; mailboxAlreadyExists: "mailboxAlreadyExists"; transportNotSupported: "transportNotSupported"; provisioningFailed: "provisioningFailed"; }>; type CreateMailboxFailureReason = z.infer; type UpdateMailboxPayload = { uuid: string; firstName?: string; lastName?: string; signature?: string | null; folderUuid?: string | null; }; type UpdateMailboxResult = { mailbox: Mailbox; }; type DeleteMailboxPayload = { uuid: string; }; type DeleteMailboxResult = { mailbox: Mailbox; }; type RefreshMailboxStatusPayload = { uuid: string; }; type RefreshMailboxStatusResult = { mailbox: Mailbox; }; type StartMailboxWarmupPayload = { uuid: string; dailyTarget?: number; }; type StartMailboxWarmupResult = { mailbox: Mailbox; }; type UpdateMailboxWarmupPayload = { uuid: string; dailyTarget?: number; status?: MailboxWarmupStatus; }; type UpdateMailboxWarmupResult = { mailbox: Mailbox; }; type StopMailboxWarmupPayload = { uuid: string; }; type StopMailboxWarmupResult = { mailbox: Mailbox; }; type GetMailboxSendAllowancePayload = { uuid: string; }; type GetMailboxSendAllowanceResult = { allowance: { dailyLimit: number; sentCount: number; remainingCount: number; }; }; type GetMailboxWarmupStatsPayload = { uuid: string; }; type GetMailboxWarmupStatsResult = { stats?: { sentCount: number; deliveredCount: number; spamCount: number; inboxRate?: number; spamRate?: number; }; }; type GetMailboxPricingResult = { monthlyCredits: Record; }; type ListMessagesPayload = { mailboxUuid?: string; statuses?: MessageListStatus[]; createdAfter?: string; createdBefore?: string; search?: string; threadUuid?: string; limit?: number; offset?: number; }; type ListMessagesResult = { messages: Message[]; count: number; }; type GetMessageResult = { message: Message; }; type ListThreadsPayload = { mailboxUuid?: string; statuses?: MessageListStatus[]; createdAfter?: string; createdBefore?: string; search?: string; limit?: number; offset?: number; }; type ListThreadsResult = { threads: Thread[]; count: number; }; type GetThreadResult = { thread: Thread; }; type ListEventsPayload = { mailboxUuid?: string; messageUuid?: string; threadUuid?: string; kinds?: EventKind[]; occurredAfter?: string; occurredBefore?: string; search?: string; limit?: number; offset?: number; }; type ListEventsResult = { events: Event[]; count: number; }; type ListSuppressionsPayload = { reasons?: SuppressionReason[]; limit?: number; offset?: number; }; type ListSuppressionsResult = { suppressions: Suppression[]; count: number; }; type CreateSuppressionPayload = { email: string; }; type CreateSuppressionResult = { suppression: Suppression; }; } } //# sourceMappingURL=mailboxManagement.d.ts.map