/** * SMTP Client Constants and Error Codes * All constants, error codes, and enums for SMTP client operations */ /** * SMTP response codes */ export declare const SMTP_CODES: { readonly SERVICE_READY: 220; readonly SERVICE_CLOSING: 221; readonly AUTHENTICATION_SUCCESSFUL: 235; readonly REQUESTED_ACTION_OK: 250; readonly USER_NOT_LOCAL: 251; readonly CANNOT_VERIFY_USER: 252; readonly START_MAIL_INPUT: 354; readonly SERVICE_NOT_AVAILABLE: 421; readonly MAILBOX_BUSY: 450; readonly LOCAL_ERROR: 451; readonly INSUFFICIENT_STORAGE: 452; readonly UNABLE_TO_ACCOMMODATE: 455; readonly SYNTAX_ERROR: 500; readonly SYNTAX_ERROR_PARAMETERS: 501; readonly COMMAND_NOT_IMPLEMENTED: 502; readonly BAD_SEQUENCE: 503; readonly PARAMETER_NOT_IMPLEMENTED: 504; readonly MAILBOX_UNAVAILABLE: 550; readonly USER_NOT_LOCAL_TRY_FORWARD: 551; readonly EXCEEDED_STORAGE: 552; readonly MAILBOX_NAME_NOT_ALLOWED: 553; readonly TRANSACTION_FAILED: 554; }; /** * SMTP command names */ export declare const SMTP_COMMANDS: { readonly HELO: "HELO"; readonly EHLO: "EHLO"; readonly MAIL_FROM: "MAIL FROM"; readonly RCPT_TO: "RCPT TO"; readonly DATA: "DATA"; readonly RSET: "RSET"; readonly NOOP: "NOOP"; readonly QUIT: "QUIT"; readonly STARTTLS: "STARTTLS"; readonly AUTH: "AUTH"; }; /** * Authentication methods */ export declare const AUTH_METHODS: { readonly PLAIN: "PLAIN"; readonly LOGIN: "LOGIN"; readonly OAUTH2: "XOAUTH2"; readonly CRAM_MD5: "CRAM-MD5"; }; /** * Common SMTP extensions */ export declare const SMTP_EXTENSIONS: { readonly PIPELINING: "PIPELINING"; readonly SIZE: "SIZE"; readonly STARTTLS: "STARTTLS"; readonly AUTH: "AUTH"; readonly EIGHT_BIT_MIME: "8BITMIME"; readonly CHUNKING: "CHUNKING"; readonly ENHANCED_STATUS_CODES: "ENHANCEDSTATUSCODES"; readonly DSN: "DSN"; }; /** * Default configuration values */ export declare const DEFAULTS: { readonly CONNECTION_TIMEOUT: 60000; readonly SOCKET_TIMEOUT: 300000; readonly COMMAND_TIMEOUT: 30000; readonly MAX_CONNECTIONS: 5; readonly MAX_MESSAGES: 100; readonly PORT_SMTP: 25; readonly PORT_SUBMISSION: 587; readonly PORT_SMTPS: 465; readonly RETRY_ATTEMPTS: 3; readonly RETRY_DELAY: 1000; readonly POOL_IDLE_TIMEOUT: 30000; }; /** * Error types for classification */ export declare enum SmtpErrorType { CONNECTION_ERROR = "CONNECTION_ERROR", AUTHENTICATION_ERROR = "AUTHENTICATION_ERROR", PROTOCOL_ERROR = "PROTOCOL_ERROR", TIMEOUT_ERROR = "TIMEOUT_ERROR", TLS_ERROR = "TLS_ERROR", SYNTAX_ERROR = "SYNTAX_ERROR", MAILBOX_ERROR = "MAILBOX_ERROR", QUOTA_ERROR = "QUOTA_ERROR", UNKNOWN_ERROR = "UNKNOWN_ERROR" } /** * Regular expressions for parsing */ export declare const REGEX_PATTERNS: { readonly EMAIL_ADDRESS: RegExp; readonly RESPONSE_CODE: RegExp; readonly ENHANCED_STATUS: RegExp; readonly AUTH_CAPABILITIES: RegExp; readonly SIZE_EXTENSION: RegExp; }; /** * Line endings and separators */ export declare const LINE_ENDINGS: { readonly CRLF: "\r\n"; readonly LF: "\n"; readonly CR: "\r"; }; /** * Connection states for internal use */ export declare const CONNECTION_STATES: { readonly DISCONNECTED: "disconnected"; readonly CONNECTING: "connecting"; readonly CONNECTED: "connected"; readonly AUTHENTICATED: "authenticated"; readonly READY: "ready"; readonly BUSY: "busy"; readonly CLOSING: "closing"; readonly ERROR: "error"; };