UNPKG

smartlead-mcp-server

Version:

MCP server for Smartlead campaign management integration. Features include creating campaigns, updating campaign settings, and managing campaign sequences.

57 lines 2.39 kB
// Type definitions for Smart Senders functionality // Type guards export function isGetVendorsParams(args) { // Since this endpoint doesn't require specific parameters beyond the API key // Any object is valid return typeof args === 'object' && args !== null; } export function isSearchDomainParams(args) { if (typeof args !== 'object' || args === null) return false; const params = args; return (typeof params.domain_name === 'string' && typeof params.vendor_id === 'number'); } export function isMailboxDetail(obj) { if (typeof obj !== 'object' || obj === null) return false; const detail = obj; return (typeof detail.first_name === 'string' && typeof detail.last_name === 'string' && (detail.profile_pic === undefined || typeof detail.profile_pic === 'string') && (detail.mailbox === undefined || typeof detail.mailbox === 'string')); } export function isDomainWithMailboxes(obj) { if (typeof obj !== 'object' || obj === null) return false; const domain = obj; return (typeof domain.domain_name === 'string' && Array.isArray(domain.mailbox_details) && domain.mailbox_details.every(detail => isMailboxDetail(detail))); } export function isAutoGenerateMailboxesParams(args) { if (typeof args !== 'object' || args === null) return false; const params = args; return (typeof params.vendor_id === 'number' && Array.isArray(params.domains) && params.domains.every(domain => isDomainWithMailboxes(domain))); } export function isPlaceOrderParams(args) { if (typeof args !== 'object' || args === null) return false; const params = args; // Check if domains have mailbox property in mailbox_details const domainsHaveMailboxes = Array.isArray(params.domains) && params.domains.every(domain => isDomainWithMailboxes(domain) && domain.mailbox_details.every(detail => typeof detail.mailbox === 'string')); return (typeof params.vendor_id === 'number' && typeof params.forwarding_domain === 'string' && domainsHaveMailboxes); } export function isGetDomainListParams(args) { // Since this endpoint doesn't require specific parameters beyond the API key // Any object is valid return typeof args === 'object' && args !== null; } //# sourceMappingURL=smartSenders.js.map