/**
 * SmartLead MCP Server - Type Definitions
 *
 * Comprehensive TypeScript type definitions and Zod schemas for all SmartLead API endpoints.
 * This file provides type safety, runtime validation, and documentation for the entire API surface.
 *
 * API Coverage:
 * - Campaign management (13 endpoints)
 * - Lead management (8 endpoints)
 * - Statistics and analytics (6 endpoints)
 * - Smart delivery (4 endpoints)
 * - Webhooks (3 endpoints)
 * - Client management (4 endpoints)
 * - Smart senders (5 endpoints)
 *
 * @author LeadMagic Team
 * @version 1.0.0
 */
import { z } from 'zod';
/**
 * Configuration interface for SmartLead API client
 */
export interface SmartLeadConfig {
    /** SmartLead API key (required) */
    apiKey: string;
    /** Custom API base URL (optional, defaults to https://server.smartlead.ai/api/v1) */
    baseUrl?: string;
    /** Request timeout in milliseconds (optional, defaults to 30000) */
    timeout?: number;
    /** Maximum retry attempts (optional, defaults to 3) */
    maxRetries?: number;
    /** Initial retry delay in milliseconds (optional, defaults to 1000) */
    retryDelay?: number;
    /** Rate limit in requests per minute (optional, defaults to 100) */
    rateLimit?: number;
}
/**
 * Schema for API error responses
 */
export declare const ErrorSchema: z.ZodObject<{
    /** Error code identifier */
    error: z.ZodString;
    /** Human-readable error message */
    message: z.ZodString;
    /** HTTP status code */
    status: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    error: string;
    message: string;
    status?: number | undefined;
}, {
    error: string;
    message: string;
    status?: number | undefined;
}>;
/**
 * Schema for successful API responses
 */
export declare const SuccessResponseSchema: z.ZodObject<{
    /** Success indicator */
    success: z.ZodBoolean;
    /** Response message */
    message: z.ZodOptional<z.ZodString>;
    /** Response data */
    data: z.ZodOptional<z.ZodUnknown>;
}, "strip", z.ZodTypeAny, {
    success: boolean;
    message?: string | undefined;
    data?: unknown;
}, {
    success: boolean;
    message?: string | undefined;
    data?: unknown;
}>;
/**
 * Request schema for creating a campaign
 */
export declare const CreateCampaignRequestSchema: z.ZodObject<{
    /** Campaign name */
    name: z.ZodString;
    /** Client ID for the campaign */
    client_id: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    name: string;
    client_id?: number | undefined;
}, {
    name: string;
    client_id?: number | undefined;
}>;
/**
 * Request schema for updating campaign schedule
 */
export declare const UpdateCampaignScheduleRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Timezone for the campaign */
    timezone: z.ZodOptional<z.ZodString>;
    /** Days of the week to send emails (1-7, where 1 is Monday) */
    days_of_the_week: z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
    /** Start hour in 24-hour format */
    start_hour: z.ZodOptional<z.ZodString>;
    /** End hour in 24-hour format */
    end_hour: z.ZodOptional<z.ZodString>;
    /** Minimum time between emails in minutes */
    min_time_btw_emails: z.ZodOptional<z.ZodNumber>;
    /** Maximum number of new leads per day */
    max_new_leads_per_day: z.ZodOptional<z.ZodNumber>;
    /** Schedule start time in ISO format */
    schedule_start_time: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    timezone?: string | undefined;
    days_of_the_week?: number[] | undefined;
    start_hour?: string | undefined;
    end_hour?: string | undefined;
    min_time_btw_emails?: number | undefined;
    max_new_leads_per_day?: number | undefined;
    schedule_start_time?: string | undefined;
}, {
    campaign_id: number;
    timezone?: string | undefined;
    days_of_the_week?: number[] | undefined;
    start_hour?: string | undefined;
    end_hour?: string | undefined;
    min_time_btw_emails?: number | undefined;
    max_new_leads_per_day?: number | undefined;
    schedule_start_time?: string | undefined;
}>;
/**
 * Request schema for updating campaign settings
 */
export declare const UpdateCampaignSettingsRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** New campaign name */
    name: z.ZodOptional<z.ZodString>;
    /** Campaign status */
    status: z.ZodOptional<z.ZodEnum<["active", "paused", "completed"]>>;
    /** Additional campaign settings */
    settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    status?: "active" | "paused" | "completed" | undefined;
    name?: string | undefined;
    settings?: Record<string, unknown> | undefined;
}, {
    campaign_id: number;
    status?: "active" | "paused" | "completed" | undefined;
    name?: string | undefined;
    settings?: Record<string, unknown> | undefined;
}>;
/**
 * Request schema for updating campaign status
 */
export declare const UpdateCampaignStatusRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** New campaign status */
    status: z.ZodEnum<["PAUSED", "STOPPED", "START"]>;
}, "strip", z.ZodTypeAny, {
    status: "PAUSED" | "STOPPED" | "START";
    campaign_id: number;
}, {
    status: "PAUSED" | "STOPPED" | "START";
    campaign_id: number;
}>;
/**
 * Request schema for getting a campaign
 */
export declare const GetCampaignRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
}, {
    campaign_id: number;
}>;
/**
 * Request schema for listing campaigns
 */
export declare const ListCampaignsRequestSchema: z.ZodObject<{
    /** Filter by status */
    status: z.ZodOptional<z.ZodEnum<["active", "paused", "completed"]>>;
    /** Maximum number of campaigns to return */
    limit: z.ZodOptional<z.ZodNumber>;
    /** Offset for pagination */
    offset: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    status?: "active" | "paused" | "completed" | undefined;
    limit?: number | undefined;
    offset?: number | undefined;
}, {
    status?: "active" | "paused" | "completed" | undefined;
    limit?: number | undefined;
    offset?: number | undefined;
}>;
/**
 * Schema for email sequence variant
 */
export declare const SequenceVariantSchema: z.ZodObject<{
    /** Email subject line */
    subject: z.ZodString;
    /** Email body content in HTML */
    email_body: z.ZodString;
    /** Variant label (A, B, C, etc.) */
    variant_label: z.ZodString;
    /** Percentage of leads to receive this variant */
    variant_distribution_percentage: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    subject: string;
    email_body: string;
    variant_label: string;
    variant_distribution_percentage?: number | undefined;
}, {
    subject: string;
    email_body: string;
    variant_label: string;
    variant_distribution_percentage?: number | undefined;
}>;
/**
 * Schema for sequence delay details
 */
export declare const SequenceDelaySchema: z.ZodObject<{
    /** Days to wait before sending this email */
    delay_in_days: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    delay_in_days: number;
}, {
    delay_in_days: number;
}>;
/**
 * Schema for email sequence
 */
export declare const EmailSequenceSchema: z.ZodObject<{
    /** Sequence number (order) */
    seq_number: z.ZodNumber;
    /** Delay details for this sequence */
    seq_delay_details: z.ZodObject<{
        /** Days to wait before sending this email */
        delay_in_days: z.ZodNumber;
    }, "strip", z.ZodTypeAny, {
        delay_in_days: number;
    }, {
        delay_in_days: number;
    }>;
    /** How to distribute variants */
    variant_distribution_type: z.ZodEnum<["MANUAL_EQUAL", "MANUAL_PERCENTAGE", "AI_EQUAL"]>;
    /** Sample percentage for AI testing */
    lead_distribution_percentage: z.ZodOptional<z.ZodNumber>;
    /** Metric for determining winner */
    winning_metric_property: z.ZodOptional<z.ZodEnum<["OPEN_RATE", "CLICK_RATE", "REPLY_RATE", "POSITIVE_REPLY_RATE"]>>;
    /** Email variants */
    seq_variants: z.ZodArray<z.ZodObject<{
        /** Email subject line */
        subject: z.ZodString;
        /** Email body content in HTML */
        email_body: z.ZodString;
        /** Variant label (A, B, C, etc.) */
        variant_label: z.ZodString;
        /** Percentage of leads to receive this variant */
        variant_distribution_percentage: z.ZodOptional<z.ZodNumber>;
    }, "strip", z.ZodTypeAny, {
        subject: string;
        email_body: string;
        variant_label: string;
        variant_distribution_percentage?: number | undefined;
    }, {
        subject: string;
        email_body: string;
        variant_label: string;
        variant_distribution_percentage?: number | undefined;
    }>, "many">;
}, "strip", z.ZodTypeAny, {
    seq_number: number;
    seq_delay_details: {
        delay_in_days: number;
    };
    variant_distribution_type: "MANUAL_EQUAL" | "MANUAL_PERCENTAGE" | "AI_EQUAL";
    seq_variants: {
        subject: string;
        email_body: string;
        variant_label: string;
        variant_distribution_percentage?: number | undefined;
    }[];
    lead_distribution_percentage?: number | undefined;
    winning_metric_property?: "OPEN_RATE" | "CLICK_RATE" | "REPLY_RATE" | "POSITIVE_REPLY_RATE" | undefined;
}, {
    seq_number: number;
    seq_delay_details: {
        delay_in_days: number;
    };
    variant_distribution_type: "MANUAL_EQUAL" | "MANUAL_PERCENTAGE" | "AI_EQUAL";
    seq_variants: {
        subject: string;
        email_body: string;
        variant_label: string;
        variant_distribution_percentage?: number | undefined;
    }[];
    lead_distribution_percentage?: number | undefined;
    winning_metric_property?: "OPEN_RATE" | "CLICK_RATE" | "REPLY_RATE" | "POSITIVE_REPLY_RATE" | undefined;
}>;
/**
 * Request schema for saving campaign sequence
 */
export declare const SaveCampaignSequenceRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Email sequence array */
    sequence: z.ZodArray<z.ZodObject<{
        /** Sequence number (order) */
        seq_number: z.ZodNumber;
        /** Delay details for this sequence */
        seq_delay_details: z.ZodObject<{
            /** Days to wait before sending this email */
            delay_in_days: z.ZodNumber;
        }, "strip", z.ZodTypeAny, {
            delay_in_days: number;
        }, {
            delay_in_days: number;
        }>;
        /** How to distribute variants */
        variant_distribution_type: z.ZodEnum<["MANUAL_EQUAL", "MANUAL_PERCENTAGE", "AI_EQUAL"]>;
        /** Sample percentage for AI testing */
        lead_distribution_percentage: z.ZodOptional<z.ZodNumber>;
        /** Metric for determining winner */
        winning_metric_property: z.ZodOptional<z.ZodEnum<["OPEN_RATE", "CLICK_RATE", "REPLY_RATE", "POSITIVE_REPLY_RATE"]>>;
        /** Email variants */
        seq_variants: z.ZodArray<z.ZodObject<{
            /** Email subject line */
            subject: z.ZodString;
            /** Email body content in HTML */
            email_body: z.ZodString;
            /** Variant label (A, B, C, etc.) */
            variant_label: z.ZodString;
            /** Percentage of leads to receive this variant */
            variant_distribution_percentage: z.ZodOptional<z.ZodNumber>;
        }, "strip", z.ZodTypeAny, {
            subject: string;
            email_body: string;
            variant_label: string;
            variant_distribution_percentage?: number | undefined;
        }, {
            subject: string;
            email_body: string;
            variant_label: string;
            variant_distribution_percentage?: number | undefined;
        }>, "many">;
    }, "strip", z.ZodTypeAny, {
        seq_number: number;
        seq_delay_details: {
            delay_in_days: number;
        };
        variant_distribution_type: "MANUAL_EQUAL" | "MANUAL_PERCENTAGE" | "AI_EQUAL";
        seq_variants: {
            subject: string;
            email_body: string;
            variant_label: string;
            variant_distribution_percentage?: number | undefined;
        }[];
        lead_distribution_percentage?: number | undefined;
        winning_metric_property?: "OPEN_RATE" | "CLICK_RATE" | "REPLY_RATE" | "POSITIVE_REPLY_RATE" | undefined;
    }, {
        seq_number: number;
        seq_delay_details: {
            delay_in_days: number;
        };
        variant_distribution_type: "MANUAL_EQUAL" | "MANUAL_PERCENTAGE" | "AI_EQUAL";
        seq_variants: {
            subject: string;
            email_body: string;
            variant_label: string;
            variant_distribution_percentage?: number | undefined;
        }[];
        lead_distribution_percentage?: number | undefined;
        winning_metric_property?: "OPEN_RATE" | "CLICK_RATE" | "REPLY_RATE" | "POSITIVE_REPLY_RATE" | undefined;
    }>, "many">;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    sequence: {
        seq_number: number;
        seq_delay_details: {
            delay_in_days: number;
        };
        variant_distribution_type: "MANUAL_EQUAL" | "MANUAL_PERCENTAGE" | "AI_EQUAL";
        seq_variants: {
            subject: string;
            email_body: string;
            variant_label: string;
            variant_distribution_percentage?: number | undefined;
        }[];
        lead_distribution_percentage?: number | undefined;
        winning_metric_property?: "OPEN_RATE" | "CLICK_RATE" | "REPLY_RATE" | "POSITIVE_REPLY_RATE" | undefined;
    }[];
}, {
    campaign_id: number;
    sequence: {
        seq_number: number;
        seq_delay_details: {
            delay_in_days: number;
        };
        variant_distribution_type: "MANUAL_EQUAL" | "MANUAL_PERCENTAGE" | "AI_EQUAL";
        seq_variants: {
            subject: string;
            email_body: string;
            variant_label: string;
            variant_distribution_percentage?: number | undefined;
        }[];
        lead_distribution_percentage?: number | undefined;
        winning_metric_property?: "OPEN_RATE" | "CLICK_RATE" | "REPLY_RATE" | "POSITIVE_REPLY_RATE" | undefined;
    }[];
}>;
/**
 * Request schema for getting campaign sequence
 */
export declare const GetCampaignSequenceRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
}, {
    campaign_id: number;
}>;
/**
 * Request schema for deleting campaign
 */
export declare const DeleteCampaignRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
}, {
    campaign_id: number;
}>;
/**
 * Request schema for exporting campaign data
 */
export declare const ExportCampaignDataRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Export format (csv, excel, json) */
    format: z.ZodOptional<z.ZodEnum<["csv", "excel", "json"]>>;
    /** Date range start */
    start_date: z.ZodOptional<z.ZodString>;
    /** Date range end */
    end_date: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    format?: "csv" | "excel" | "json" | undefined;
    start_date?: string | undefined;
    end_date?: string | undefined;
}, {
    campaign_id: number;
    format?: "csv" | "excel" | "json" | undefined;
    start_date?: string | undefined;
    end_date?: string | undefined;
}>;
/**
 * Request schema for fetching campaign analytics by date range
 */
export declare const FetchCampaignAnalyticsByDateRangeRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Start date in YYYY-MM-DD format */
    start_date: z.ZodString;
    /** End date in YYYY-MM-DD format */
    end_date: z.ZodString;
    /** Timezone */
    timezone: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    timezone: string;
    start_date: string;
    end_date: string;
}, {
    campaign_id: number;
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
}>;
/**
 * Request schema for getting campaign sequence analytics
 */
export declare const GetCampaignSequenceAnalyticsRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Start date in YYYY-MM-DD format */
    start_date: z.ZodOptional<z.ZodString>;
    /** End date in YYYY-MM-DD format */
    end_date: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    start_date?: string | undefined;
    end_date?: string | undefined;
}, {
    campaign_id: number;
    start_date?: string | undefined;
    end_date?: string | undefined;
}>;
/**
 * Request schema for fetching all campaigns using lead ID
 */
export declare const FetchAllCampaignsUsingLeadIdRequestSchema: z.ZodObject<{
    /** Lead ID */
    lead_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    lead_id: number;
}, {
    lead_id: number;
}>;
/**
 * Schema for lead information
 */
export declare const LeadSchema: z.ZodObject<{
    /** Lead ID */
    id: z.ZodOptional<z.ZodNumber>;
    /** First name */
    first_name: z.ZodOptional<z.ZodString>;
    /** Last name */
    last_name: z.ZodOptional<z.ZodString>;
    /** Email address */
    email: z.ZodOptional<z.ZodString>;
    /** Company name */
    company_name: z.ZodOptional<z.ZodString>;
    /** Job title */
    job_title: z.ZodOptional<z.ZodString>;
    /** Phone number */
    phone: z.ZodOptional<z.ZodString>;
    /** LinkedIn URL */
    linkedin_url: z.ZodOptional<z.ZodString>;
    /** Custom fields */
    custom_fields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, "strip", z.ZodTypeAny, {
    id?: number | undefined;
    first_name?: string | undefined;
    last_name?: string | undefined;
    email?: string | undefined;
    company_name?: string | undefined;
    job_title?: string | undefined;
    phone?: string | undefined;
    linkedin_url?: string | undefined;
    custom_fields?: Record<string, unknown> | undefined;
}, {
    id?: number | undefined;
    first_name?: string | undefined;
    last_name?: string | undefined;
    email?: string | undefined;
    company_name?: string | undefined;
    job_title?: string | undefined;
    phone?: string | undefined;
    linkedin_url?: string | undefined;
    custom_fields?: Record<string, unknown> | undefined;
}>;
/**
 * Request schema for listing leads
 */
export declare const ListLeadsRequestSchema: z.ZodObject<{
    /** Filter leads by campaign ID */
    campaign_id: z.ZodOptional<z.ZodNumber>;
    /** Filter leads by status */
    status: z.ZodOptional<z.ZodString>;
    /** Maximum number of leads to return */
    limit: z.ZodOptional<z.ZodNumber>;
    /** Offset for pagination */
    offset: z.ZodOptional<z.ZodNumber>;
    /** Search term to filter leads */
    search: z.ZodOptional<z.ZodString>;
    /** Filter leads created after this date */
    start_date: z.ZodOptional<z.ZodString>;
    /** Filter leads created before this date */
    end_date: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    status?: string | undefined;
    campaign_id?: number | undefined;
    limit?: number | undefined;
    offset?: number | undefined;
    start_date?: string | undefined;
    end_date?: string | undefined;
    search?: string | undefined;
}, {
    status?: string | undefined;
    campaign_id?: number | undefined;
    limit?: number | undefined;
    offset?: number | undefined;
    start_date?: string | undefined;
    end_date?: string | undefined;
    search?: string | undefined;
}>;
/**
 * Request schema for getting a lead
 */
export declare const GetLeadRequestSchema: z.ZodObject<{
    /** Lead ID */
    lead_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    lead_id: number;
}, {
    lead_id: number;
}>;
/**
 * Request schema for adding a lead to campaign
 */
export declare const AddLeadToCampaignRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Email address */
    email: z.ZodString;
    /** First name */
    first_name: z.ZodOptional<z.ZodString>;
    /** Last name */
    last_name: z.ZodOptional<z.ZodString>;
    /** Company */
    company: z.ZodOptional<z.ZodString>;
    /** Job title */
    title: z.ZodOptional<z.ZodString>;
    /** Phone number */
    phone: z.ZodOptional<z.ZodString>;
    /** Custom fields */
    custom_fields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    email: string;
    first_name?: string | undefined;
    last_name?: string | undefined;
    phone?: string | undefined;
    custom_fields?: Record<string, unknown> | undefined;
    company?: string | undefined;
    title?: string | undefined;
}, {
    campaign_id: number;
    email: string;
    first_name?: string | undefined;
    last_name?: string | undefined;
    phone?: string | undefined;
    custom_fields?: Record<string, unknown> | undefined;
    company?: string | undefined;
    title?: string | undefined;
}>;
/**
 * Request schema for updating a lead
 */
export declare const UpdateLeadRequestSchema: z.ZodObject<{
    /** Lead ID */
    lead_id: z.ZodNumber;
    /** Email address */
    email: z.ZodOptional<z.ZodString>;
    /** First name */
    first_name: z.ZodOptional<z.ZodString>;
    /** Last name */
    last_name: z.ZodOptional<z.ZodString>;
    /** Company */
    company: z.ZodOptional<z.ZodString>;
    /** Job title */
    title: z.ZodOptional<z.ZodString>;
    /** Phone number */
    phone: z.ZodOptional<z.ZodString>;
    /** Custom fields */
    custom_fields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, "strip", z.ZodTypeAny, {
    lead_id: number;
    first_name?: string | undefined;
    last_name?: string | undefined;
    email?: string | undefined;
    phone?: string | undefined;
    custom_fields?: Record<string, unknown> | undefined;
    company?: string | undefined;
    title?: string | undefined;
}, {
    lead_id: number;
    first_name?: string | undefined;
    last_name?: string | undefined;
    email?: string | undefined;
    phone?: string | undefined;
    custom_fields?: Record<string, unknown> | undefined;
    company?: string | undefined;
    title?: string | undefined;
}>;
/**
 * Request schema for updating lead status
 */
export declare const UpdateLeadStatusRequestSchema: z.ZodObject<{
    /** Lead ID */
    lead_id: z.ZodNumber;
    /** New status */
    status: z.ZodString;
}, "strip", z.ZodTypeAny, {
    status: string;
    lead_id: number;
}, {
    status: string;
    lead_id: number;
}>;
/**
 * Request schema for bulk importing leads
 */
export declare const BulkImportLeadsRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Array of leads to import */
    leads: z.ZodArray<z.ZodObject<{
        /** Email address */
        email: z.ZodString;
        /** First name */
        first_name: z.ZodOptional<z.ZodString>;
        /** Last name */
        last_name: z.ZodOptional<z.ZodString>;
        /** Company */
        company: z.ZodOptional<z.ZodString>;
        /** Job title */
        title: z.ZodOptional<z.ZodString>;
        /** Phone number */
        phone: z.ZodOptional<z.ZodString>;
        /** Custom fields */
        custom_fields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
    }, "strip", z.ZodTypeAny, {
        email: string;
        first_name?: string | undefined;
        last_name?: string | undefined;
        phone?: string | undefined;
        custom_fields?: Record<string, unknown> | undefined;
        company?: string | undefined;
        title?: string | undefined;
    }, {
        email: string;
        first_name?: string | undefined;
        last_name?: string | undefined;
        phone?: string | undefined;
        custom_fields?: Record<string, unknown> | undefined;
        company?: string | undefined;
        title?: string | undefined;
    }>, "many">;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    leads: {
        email: string;
        first_name?: string | undefined;
        last_name?: string | undefined;
        phone?: string | undefined;
        custom_fields?: Record<string, unknown> | undefined;
        company?: string | undefined;
        title?: string | undefined;
    }[];
}, {
    campaign_id: number;
    leads: {
        email: string;
        first_name?: string | undefined;
        last_name?: string | undefined;
        phone?: string | undefined;
        custom_fields?: Record<string, unknown> | undefined;
        company?: string | undefined;
        title?: string | undefined;
    }[];
}>;
/**
 * Request schema for deleting a lead
 */
export declare const DeleteLeadRequestSchema: z.ZodObject<{
    /** Lead ID */
    lead_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    lead_id: number;
}, {
    lead_id: number;
}>;
/**
 * Request schema for campaign analytics by date
 */
export declare const CampaignAnalyticsByDateRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Start date in YYYY-MM-DD format */
    start_date: z.ZodString;
    /** End date in YYYY-MM-DD format */
    end_date: z.ZodString;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    start_date: string;
    end_date: string;
}, {
    campaign_id: number;
    start_date: string;
    end_date: string;
}>;
/**
 * Request schema for campaign sequence analytics
 */
export declare const CampaignSequenceAnalyticsRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Start date in YYYY-MM-DD HH:MM:SS format */
    start_date: z.ZodString;
    /** End date in YYYY-MM-DD HH:MM:SS format */
    end_date: z.ZodString;
    /** Timezone for analytics */
    time_zone: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    start_date: string;
    end_date: string;
    time_zone?: string | undefined;
}, {
    campaign_id: number;
    start_date: string;
    end_date: string;
    time_zone?: string | undefined;
}>;
/**
 * Request schema for campaign statistics
 */
export declare const CampaignStatisticsRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Offset for pagination */
    offset: z.ZodOptional<z.ZodNumber>;
    /** Maximum number of statistics to return */
    limit: z.ZodOptional<z.ZodNumber>;
    /** Email sequence number to filter by */
    email_sequence_number: z.ZodOptional<z.ZodString>;
    /** Email status to filter by */
    email_status: z.ZodOptional<z.ZodString>;
    /** Filter by sent time greater than this date */
    sent_time_start_date: z.ZodOptional<z.ZodString>;
    /** Filter by sent time less than this date */
    sent_time_end_date: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    limit?: number | undefined;
    offset?: number | undefined;
    email_sequence_number?: string | undefined;
    email_status?: string | undefined;
    sent_time_start_date?: string | undefined;
    sent_time_end_date?: string | undefined;
}, {
    campaign_id: number;
    limit?: number | undefined;
    offset?: number | undefined;
    email_sequence_number?: string | undefined;
    email_status?: string | undefined;
    sent_time_start_date?: string | undefined;
    sent_time_end_date?: string | undefined;
}>;
/**
 * Request schema for warmup stats by email
 */
export declare const WarmupStatsByEmailRequestSchema: z.ZodObject<{
    /** Email account ID */
    email_account_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    email_account_id: number;
}, {
    email_account_id: number;
}>;
/**
 * Request schema for campaign top level analytics
 */
export declare const CampaignTopLevelAnalyticsRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
}, {
    campaign_id: number;
}>;
/**
 * Request schema for campaign lead statistics
 */
export declare const CampaignLeadStatisticsRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Maximum number of leads to return */
    limit: z.ZodOptional<z.ZodNumber>;
    /** Filter by leads created after this date */
    created_at_gt: z.ZodOptional<z.ZodString>;
    /** Filter by events after this date */
    event_time_gt: z.ZodOptional<z.ZodString>;
    /** Offset for pagination */
    offset: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    limit?: number | undefined;
    offset?: number | undefined;
    created_at_gt?: string | undefined;
    event_time_gt?: string | undefined;
}, {
    campaign_id: number;
    limit?: number | undefined;
    offset?: number | undefined;
    created_at_gt?: string | undefined;
    event_time_gt?: string | undefined;
}>;
/**
 * Request schema for campaign mailbox statistics
 */
export declare const CampaignMailboxStatisticsRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Client ID if campaign is client-specific */
    client_id: z.ZodOptional<z.ZodString>;
    /** Offset for pagination */
    offset: z.ZodOptional<z.ZodNumber>;
    /** Maximum number of results to return */
    limit: z.ZodOptional<z.ZodNumber>;
    /** Start date */
    start_date: z.ZodOptional<z.ZodString>;
    /** End date */
    end_date: z.ZodOptional<z.ZodString>;
    /** Timezone for the data */
    timezone: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    client_id?: string | undefined;
    timezone?: string | undefined;
    limit?: number | undefined;
    offset?: number | undefined;
    start_date?: string | undefined;
    end_date?: string | undefined;
}, {
    campaign_id: number;
    client_id?: string | undefined;
    timezone?: string | undefined;
    limit?: number | undefined;
    offset?: number | undefined;
    start_date?: string | undefined;
    end_date?: string | undefined;
}>;
/**
 * Request schema for downloading campaign data
 */
export declare const DownloadCampaignDataRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Type of data to download */
    download_type: z.ZodEnum<["analytics", "leads", "sequence", "full_export"]>;
    /** Format of downloaded data */
    format: z.ZodEnum<["json", "csv"]>;
    /** Optional user identifier */
    user_id: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    format: "csv" | "json";
    download_type: "sequence" | "leads" | "analytics" | "full_export";
    user_id?: string | undefined;
}, {
    campaign_id: number;
    format: "csv" | "json";
    download_type: "sequence" | "leads" | "analytics" | "full_export";
    user_id?: string | undefined;
}>;
/**
 * Request schema for viewing download statistics
 */
export declare const ViewDownloadStatisticsRequestSchema: z.ZodObject<{
    /** Time period to filter by */
    time_period: z.ZodOptional<z.ZodEnum<["all", "today", "week", "month"]>>;
    /** How to group the statistics */
    group_by: z.ZodOptional<z.ZodEnum<["type", "format", "campaign", "date"]>>;
}, "strip", z.ZodTypeAny, {
    time_period?: "all" | "today" | "week" | "month" | undefined;
    group_by?: "type" | "date" | "format" | "campaign" | undefined;
}, {
    time_period?: "all" | "today" | "week" | "month" | undefined;
    group_by?: "type" | "date" | "format" | "campaign" | undefined;
}>;
/**
 * Webhook event types enum
 */
export declare const WebhookEventType: z.ZodEnum<["LEAD_REPLIED", "LEAD_OPENED", "LEAD_CLICKED", "LEAD_BOUNCED", "LEAD_UNSUBSCRIBED", "LEAD_INTERESTED", "LEAD_NOT_INTERESTED", "LEAD_MEETING_BOOKED", "LEAD_MEETING_COMPLETED", "LEAD_DNC_GLOBAL", "LEAD_DNC_CAMPAIGN", "LEAD_FINISHED"]>;
/**
 * Request schema for fetching webhooks by campaign
 */
export declare const FetchWebhooksByCampaignRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodString;
}, "strip", z.ZodTypeAny, {
    campaign_id: string;
}, {
    campaign_id: string;
}>;
/**
 * Request schema for upserting campaign webhook
 */
export declare const UpsertCampaignWebhookRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodString;
    /** Webhook ID (null for new webhook) */
    id: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    /** Webhook name */
    name: z.ZodString;
    /** Webhook URL */
    webhook_url: z.ZodString;
    /** Event types to trigger webhook */
    event_types: z.ZodArray<z.ZodEnum<["LEAD_REPLIED", "LEAD_OPENED", "LEAD_CLICKED", "LEAD_BOUNCED", "LEAD_UNSUBSCRIBED", "LEAD_INTERESTED", "LEAD_NOT_INTERESTED", "LEAD_MEETING_BOOKED", "LEAD_MEETING_COMPLETED", "LEAD_DNC_GLOBAL", "LEAD_DNC_CAMPAIGN", "LEAD_FINISHED"]>, "many">;
    /** Categories for filtering */
    categories: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
}, "strip", z.ZodTypeAny, {
    name: string;
    campaign_id: string;
    webhook_url: string;
    event_types: ("LEAD_REPLIED" | "LEAD_OPENED" | "LEAD_CLICKED" | "LEAD_BOUNCED" | "LEAD_UNSUBSCRIBED" | "LEAD_INTERESTED" | "LEAD_NOT_INTERESTED" | "LEAD_MEETING_BOOKED" | "LEAD_MEETING_COMPLETED" | "LEAD_DNC_GLOBAL" | "LEAD_DNC_CAMPAIGN" | "LEAD_FINISHED")[];
    id?: number | null | undefined;
    categories?: string[] | undefined;
}, {
    name: string;
    campaign_id: string;
    webhook_url: string;
    event_types: ("LEAD_REPLIED" | "LEAD_OPENED" | "LEAD_CLICKED" | "LEAD_BOUNCED" | "LEAD_UNSUBSCRIBED" | "LEAD_INTERESTED" | "LEAD_NOT_INTERESTED" | "LEAD_MEETING_BOOKED" | "LEAD_MEETING_COMPLETED" | "LEAD_DNC_GLOBAL" | "LEAD_DNC_CAMPAIGN" | "LEAD_FINISHED")[];
    id?: number | null | undefined;
    categories?: string[] | undefined;
}>;
/**
 * Request schema for deleting campaign webhook
 */
export declare const DeleteCampaignWebhookRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodString;
    /** Webhook ID */
    id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    campaign_id: string;
    id: number;
}, {
    campaign_id: string;
    id: number;
}>;
/**
 * Request schema for webhook publish summary
 */
export declare const WebhookPublishSummaryRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodString;
    /** Start time in ISO format */
    fromTime: z.ZodOptional<z.ZodString>;
    /** End time in ISO format */
    toTime: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    campaign_id: string;
    fromTime?: string | undefined;
    toTime?: string | undefined;
}, {
    campaign_id: string;
    fromTime?: string | undefined;
    toTime?: string | undefined;
}>;
/**
 * Request schema for retriggering failed events
 */
export declare const RetriggerFailedEventsRequestSchema: z.ZodObject<{
    /** Campaign ID */
    campaign_id: z.ZodString;
    /** Start time in ISO format */
    fromTime: z.ZodString;
    /** End time in ISO format */
    toTime: z.ZodString;
}, "strip", z.ZodTypeAny, {
    campaign_id: string;
    fromTime: string;
    toTime: string;
}, {
    campaign_id: string;
    fromTime: string;
    toTime: string;
}>;
/**
 * Request schema for creating manual placement test
 */
export declare const CreateManualPlacementTestRequestSchema: z.ZodObject<{
    /** Test name */
    test_name: z.ZodString;
    /** Test description */
    description: z.ZodOptional<z.ZodString>;
    /** Spam filters to test */
    spam_filters: z.ZodArray<z.ZodString, "many">;
    /** Enable link checker */
    link_checker: z.ZodBoolean;
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Sequence mapping ID */
    sequence_mapping_id: z.ZodNumber;
    /** Provider IDs */
    provider_ids: z.ZodArray<z.ZodNumber, "many">;
    /** Sender accounts */
    sender_accounts: z.ZodArray<z.ZodString, "many">;
    /** Send all emails without time gap */
    all_email_sent_without_time_gap: z.ZodBoolean;
    /** Minimum time between emails */
    min_time_btwn_emails: z.ZodNumber;
    /** Time unit */
    min_time_unit: z.ZodString;
    /** Enable warmup */
    is_warmup: z.ZodBoolean;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    test_name: string;
    spam_filters: string[];
    link_checker: boolean;
    sequence_mapping_id: number;
    provider_ids: number[];
    sender_accounts: string[];
    all_email_sent_without_time_gap: boolean;
    min_time_btwn_emails: number;
    min_time_unit: string;
    is_warmup: boolean;
    description?: string | undefined;
}, {
    campaign_id: number;
    test_name: string;
    spam_filters: string[];
    link_checker: boolean;
    sequence_mapping_id: number;
    provider_ids: number[];
    sender_accounts: string[];
    all_email_sent_without_time_gap: boolean;
    min_time_btwn_emails: number;
    min_time_unit: string;
    is_warmup: boolean;
    description?: string | undefined;
}>;
/**
 * Request schema for creating automated placement test
 */
export declare const CreateAutomatedPlacementTestRequestSchema: z.ZodObject<{
    /** Test name */
    test_name: z.ZodString;
    /** Test description */
    description: z.ZodOptional<z.ZodString>;
    /** Spam filters to test */
    spam_filters: z.ZodArray<z.ZodString, "many">;
    /** Enable link checker */
    link_checker: z.ZodBoolean;
    /** Campaign ID */
    campaign_id: z.ZodNumber;
    /** Sequence mapping ID */
    sequence_mapping_id: z.ZodNumber;
    /** Provider IDs */
    provider_ids: z.ZodArray<z.ZodNumber, "many">;
    /** Sender accounts */
    sender_accounts: z.ZodArray<z.ZodString, "many">;
    /** Send all emails without time gap */
    all_email_sent_without_time_gap: z.ZodBoolean;
    /** Minimum time between emails */
    min_time_btwn_emails: z.ZodNumber;
    /** Time unit */
    min_time_unit: z.ZodString;
    /** Enable warmup */
    is_warmup: z.ZodBoolean;
    /** Schedule start time */
    schedule_start_time: z.ZodString;
    /** Test end date */
    test_end_date: z.ZodString;
    /** Frequency in days */
    every_days: z.ZodNumber;
    /** Timezone */
    tz: z.ZodString;
    /** Days of week */
    days: z.ZodArray<z.ZodNumber, "many">;
    /** Start hour */
    starHour: z.ZodString;
    /** Folder ID */
    folder_id: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    schedule_start_time: string;
    test_name: string;
    spam_filters: string[];
    link_checker: boolean;
    sequence_mapping_id: number;
    provider_ids: number[];
    sender_accounts: string[];
    all_email_sent_without_time_gap: boolean;
    min_time_btwn_emails: number;
    min_time_unit: string;
    is_warmup: boolean;
    test_end_date: string;
    every_days: number;
    tz: string;
    days: number[];
    starHour: string;
    description?: string | undefined;
    folder_id?: number | undefined;
}, {
    campaign_id: number;
    schedule_start_time: string;
    test_name: string;
    spam_filters: string[];
    link_checker: boolean;
    sequence_mapping_id: number;
    provider_ids: number[];
    sender_accounts: string[];
    all_email_sent_without_time_gap: boolean;
    min_time_btwn_emails: number;
    min_time_unit: string;
    is_warmup: boolean;
    test_end_date: string;
    every_days: number;
    tz: string;
    days: number[];
    starHour: string;
    description?: string | undefined;
    folder_id?: number | undefined;
}>;
/**
 * Request schema for getting spam test details
 */
export declare const GetSpamTestDetailsRequestSchema: z.ZodObject<{
    /** Spam test ID */
    spam_test_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    spam_test_id: number;
}, {
    spam_test_id: number;
}>;
/**
 * Request schema for deleting smart delivery tests
 */
export declare const DeleteSmartDeliveryTestsRequestSchema: z.ZodObject<{
    /** Array of spam test IDs to delete */
    spamTestIds: z.ZodArray<z.ZodNumber, "many">;
}, "strip", z.ZodTypeAny, {
    spamTestIds: number[];
}, {
    spamTestIds: number[];
}>;
/**
 * Request schema for listing tests
 */
export declare const ListTestsRequestSchema: z.ZodObject<{
    /** Test type */
    testType: z.ZodEnum<["manual", "auto"]>;
    /** Limit */
    limit: z.ZodOptional<z.ZodNumber>;
    /** Offset */
    offset: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    testType: "manual" | "auto";
    limit?: number | undefined;
    offset?: number | undefined;
}, {
    testType: "manual" | "auto";
    limit?: number | undefined;
    offset?: number | undefined;
}>;
/**
 * Request schema for creating folder
 */
export declare const CreateFolderRequestSchema: z.ZodObject<{
    /** Folder name */
    name: z.ZodString;
}, "strip", z.ZodTypeAny, {
    name: string;
}, {
    name: string;
}>;
/**
 * Request schema for getting folder by ID
 */
export declare const GetFolderByIdRequestSchema: z.ZodObject<{
    /** Folder ID */
    folder_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    folder_id: number;
}, {
    folder_id: number;
}>;
/** Configuration type for SmartLead client */
export type SmartLeadClientConfig = SmartLeadConfig;
/** Campaign management types */
export type CreateCampaignRequest = z.infer<typeof CreateCampaignRequestSchema>;
export type UpdateCampaignScheduleRequest = z.infer<typeof UpdateCampaignScheduleRequestSchema>;
export type UpdateCampaignSettingsRequest = z.infer<typeof UpdateCampaignSettingsRequestSchema>;
export type UpdateCampaignStatusRequest = z.infer<typeof UpdateCampaignStatusRequestSchema>;
export type GetCampaignRequest = z.infer<typeof GetCampaignRequestSchema>;
export type ListCampaignsRequest = z.infer<typeof ListCampaignsRequestSchema>;
/** Email sequence types */
export type EmailSequence = z.infer<typeof EmailSequenceSchema>;
export type SequenceVariant = z.infer<typeof SequenceVariantSchema>;
export type SaveCampaignSequenceRequest = z.infer<typeof SaveCampaignSequenceRequestSchema>;
export type GetCampaignSequenceRequest = z.infer<typeof GetCampaignSequenceRequestSchema>;
export type DeleteCampaignRequest = z.infer<typeof DeleteCampaignRequestSchema>;
export type ExportCampaignDataRequest = z.infer<typeof ExportCampaignDataRequestSchema>;
export type FetchCampaignAnalyticsByDateRangeRequest = z.infer<typeof FetchCampaignAnalyticsByDateRangeRequestSchema>;
export type GetCampaignSequenceAnalyticsRequest = z.infer<typeof GetCampaignSequenceAnalyticsRequestSchema>;
export type FetchAllCampaignsUsingLeadIdRequest = z.infer<typeof FetchAllCampaignsUsingLeadIdRequestSchema>;
/** Lead management types */
export type Lead = z.infer<typeof LeadSchema>;
export type ListLeadsRequest = z.infer<typeof ListLeadsRequestSchema>;
export type GetLeadRequest = z.infer<typeof GetLeadRequestSchema>;
export type AddLeadToCampaignRequest = z.infer<typeof AddLeadToCampaignRequestSchema>;
export type UpdateLeadRequest = z.infer<typeof UpdateLeadRequestSchema>;
export type UpdateLeadStatusRequest = z.infer<typeof UpdateLeadStatusRequestSchema>;
export type BulkImportLeadsRequest = z.infer<typeof BulkImportLeadsRequestSchema>;
export type DeleteLeadRequest = z.infer<typeof DeleteLeadRequestSchema>;
/** Analytics types */
export type CampaignAnalyticsByDateRequest = z.infer<typeof CampaignAnalyticsByDateRequestSchema>;
export type CampaignSequenceAnalyticsRequest = z.infer<typeof CampaignSequenceAnalyticsRequestSchema>;
export type CampaignStatisticsRequest = z.infer<typeof CampaignStatisticsRequestSchema>;
export type WarmupStatsByEmailRequest = z.infer<typeof WarmupStatsByEmailRequestSchema>;
export type CampaignTopLevelAnalyticsRequest = z.infer<typeof CampaignTopLevelAnalyticsRequestSchema>;
export type CampaignLeadStatisticsRequest = z.infer<typeof CampaignLeadStatisticsRequestSchema>;
export type CampaignMailboxStatisticsRequest = z.infer<typeof CampaignMailboxStatisticsRequestSchema>;
export type DownloadCampaignDataRequest = z.infer<typeof DownloadCampaignDataRequestSchema>;
export type ViewDownloadStatisticsRequest = z.infer<typeof ViewDownloadStatisticsRequestSchema>;
/** Webhook types */
export type FetchWebhooksByCampaignRequest = z.infer<typeof FetchWebhooksByCampaignRequestSchema>;
export type UpsertCampaignWebhookRequest = z.infer<typeof UpsertCampaignWebhookRequestSchema>;
export type DeleteCampaignWebhookRequest = z.infer<typeof DeleteCampaignWebhookRequestSchema>;
export type WebhookPublishSummaryRequest = z.infer<typeof WebhookPublishSummaryRequestSchema>;
export type RetriggerFailedEventsRequest = z.infer<typeof RetriggerFailedEventsRequestSchema>;
/** Smart Delivery types */
export type CreateManualPlacementTestRequest = z.infer<typeof CreateManualPlacementTestRequestSchema>;
export type CreateAutomatedPlacementTestRequest = z.infer<typeof CreateAutomatedPlacementTestRequestSchema>;
export type GetSpamTestDetailsRequest = z.infer<typeof GetSpamTestDetailsRequestSchema>;
export type DeleteSmartDeliveryTestsRequest = z.infer<typeof DeleteSmartDeliveryTestsRequestSchema>;
export type ListTestsRequest = z.infer<typeof ListTestsRequestSchema>;
export type CreateFolderRequest = z.infer<typeof CreateFolderRequestSchema>;
export type GetFolderByIdRequest = z.infer<typeof GetFolderByIdRequestSchema>;
/** Common response types */
export type ErrorResponse = z.infer<typeof ErrorSchema>;
export type SuccessResponse = z.infer<typeof SuccessResponseSchema>;
/**
 * Schema for getting campaigns with analytics - comprehensive endpoint
 */
export declare const GetCampaignsWithAnalyticsRequestSchema: z.ZodObject<{
    /** Filter campaigns by specific client ID to reduce dataset size */
    client_id: z.ZodOptional<z.ZodString>;
    /** Filter campaigns by status (recommended for large accounts) */
    status: z.ZodOptional<z.ZodEnum<["ACTIVE", "PAUSED", "COMPLETED", "DRAFT"]>>;
    /** Start date for analytics (YYYY-MM-DD format) */
    start_date: z.ZodOptional<z.ZodString>;
    /** End date for analytics (YYYY-MM-DD format) */
    end_date: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    status?: "PAUSED" | "ACTIVE" | "COMPLETED" | "DRAFT" | undefined;
    client_id?: string | undefined;
    start_date?: string | undefined;
    end_date?: string | undefined;
}, {
    status?: "PAUSED" | "ACTIVE" | "COMPLETED" | "DRAFT" | undefined;
    client_id?: string | undefined;
    start_date?: string | undefined;
    end_date?: string | undefined;
}>;
export type GetCampaignsWithAnalyticsRequest = z.infer<typeof GetCampaignsWithAnalyticsRequestSchema>;
export declare const FetchLeadCategoriesRequestSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
export declare const ListLeadsByCampaignRequestSchema: z.ZodObject<{
    campaign_id: z.ZodNumber;
    limit: z.ZodOptional<z.ZodNumber>;
    offset: z.ZodOptional<z.ZodNumber>;
    status: z.ZodOptional<z.ZodString>;
    search: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    status?: string | undefined;
    limit?: number | undefined;
    offset?: number | undefined;
    search?: string | undefined;
}, {
    campaign_id: number;
    status?: string | undefined;
    limit?: number | undefined;
    offset?: number | undefined;
    search?: string | undefined;
}>;
export declare const FetchLeadByEmailRequestSchema: z.ZodObject<{
    email: z.ZodString;
}, "strip", z.ZodTypeAny, {
    email: string;
}, {
    email: string;
}>;
export declare const AddLeadsToCampaignRequestSchema: z.ZodObject<{
    campaign_id: z.ZodNumber;
    leads: z.ZodArray<z.ZodObject<{
        email: z.ZodString;
        first_name: z.ZodOptional<z.ZodString>;
        last_name: z.ZodOptional<z.ZodString>;
        company: z.ZodOptional<z.ZodString>;
        title: z.ZodOptional<z.ZodString>;
        phone: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        email: string;
        first_name?: string | undefined;
        last_name?: string | undefined;
        phone?: string | undefined;
        company?: string | undefined;
        title?: string | undefined;
    }, {
        email: string;
        first_name?: string | undefined;
        last_name?: string | undefined;
        phone?: string | undefined;
        company?: string | undefined;
        title?: string | undefined;
    }>, "many">;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    leads: {
        email: string;
        first_name?: string | undefined;
        last_name?: string | undefined;
        phone?: string | undefined;
        company?: string | undefined;
        title?: string | undefined;
    }[];
}, {
    campaign_id: number;
    leads: {
        email: string;
        first_name?: string | undefined;
        last_name?: string | undefined;
        phone?: string | undefined;
        company?: string | undefined;
        title?: string | undefined;
    }[];
}>;
export declare const ResumeLeadByCampaignRequestSchema: z.ZodObject<{
    campaign_id: z.ZodNumber;
    lead_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    lead_id: number;
}, {
    campaign_id: number;
    lead_id: number;
}>;
export declare const PauseLeadByCampaignRequestSchema: z.ZodObject<{
    campaign_id: z.ZodNumber;
    lead_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    lead_id: number;
}, {
    campaign_id: number;
    lead_id: number;
}>;
export declare const DeleteLeadByCampaignRequestSchema: z.ZodObject<{
    campaign_id: z.ZodNumber;
    lead_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    lead_id: number;
}, {
    campaign_id: number;
    lead_id: number;
}>;
export declare const UnsubscribeLeadFromCampaignRequestSchema: z.ZodObject<{
    campaign_id: z.ZodNumber;
    lead_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    lead_id: number;
}, {
    campaign_id: number;
    lead_id: number;
}>;
export declare const UnsubscribeLeadFromAllCampaignsRequestSchema: z.ZodObject<{
    lead_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    lead_id: number;
}, {
    lead_id: number;
}>;
export declare const AddLeadToGlobalBlocklistRequestSchema: z.ZodObject<{
    email: z.ZodString;
}, "strip", z.ZodTypeAny, {
    email: string;
}, {
    email: string;
}>;
export declare const UpdateLeadByIdRequestSchema: z.ZodObject<{
    lead_id: z.ZodNumber;
    email: z.ZodOptional<z.ZodString>;
    first_name: z.ZodOptional<z.ZodString>;
    last_name: z.ZodOptional<z.ZodString>;
    company: z.ZodOptional<z.ZodString>;
    title: z.ZodOptional<z.ZodString>;
    phone: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    lead_id: number;
    first_name?: string | undefined;
    last_name?: string | undefined;
    email?: string | undefined;
    phone?: string | undefined;
    company?: string | undefined;
    title?: string | undefined;
}, {
    lead_id: number;
    first_name?: string | undefined;
    last_name?: string | undefined;
    email?: string | undefined;
    phone?: string | undefined;
    company?: string | undefined;
    title?: string | undefined;
}>;
export declare const UpdateLeadCategoryRequestSchema: z.ZodObject<{
    campaign_id: z.ZodNumber;
    lead_id: z.ZodNumber;
    category: z.ZodString;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    lead_id: number;
    category: string;
}, {
    campaign_id: number;
    lead_id: number;
    category: string;
}>;
export declare const FetchLeadMessageHistoryRequestSchema: z.ZodObject<{
    campaign_id: z.ZodNumber;
    lead_id: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    lead_id: number;
}, {
    campaign_id: number;
    lead_id: number;
}>;
export declare const ReplyToLeadFromMasterInboxRequestSchema: z.ZodObject<{
    campaign_id: z.ZodNumber;
    lead_id: z.ZodNumber;
    message: z.ZodString;
    subject: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    message: string;
    campaign_id: number;
    lead_id: number;
    subject?: string | undefined;
}, {
    message: string;
    campaign_id: number;
    lead_id: number;
    subject?: string | undefined;
}>;
export declare const ForwardReplyRequestSchema: z.ZodObject<{
    campaign_id: z.ZodNumber;
    lead_id: z.ZodNumber;
    forward_to: z.ZodString;
    message: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    campaign_id: number;
    lead_id: number;
    forward_to: string;
    message?: string | undefined;
}, {
    campaign_id: number;
    lead_id: number;
    forward_to: string;
    message?: string | undefined;
}>;
export declare const FetchAllLeadsFromAccountRequestSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
export declare const FetchLeadsFromGlobalBlocklistRequestSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
export type ListLeadsByCampaignRequest = z.infer<typeof ListLeadsByCampaignRequestSchema>;
export type FetchLeadByEmailRequest = z.infer<typeof FetchLeadByEmailRequestSchema>;
export type AddLeadsToCampaignRequest = z.infer<typeof AddLeadsToCampaignRequestSchema>;
export type ResumeLeadByCampaignRequest = z.infer<typeof ResumeLeadByCampaignRequestSchema>;
export type PauseLeadByCampaignRequest = z.infer<typeof PauseLeadByCampaignRequestSchema>;
export type DeleteLeadByCampaignRequest = z.infer<typeof DeleteLeadByCampaignRequestSchema>;
export type UnsubscribeLeadFromCampaignRequest = z.infer<typeof UnsubscribeLeadFromCampaignRequestSchema>;
export type UnsubscribeLeadFromAllCampaignsRequest = z.infer<typeof UnsubscribeLeadFromAllCampaignsRequestSchema>;
export type AddLeadToGlobalBlocklistRequest = z.infer<typeof AddLeadToGlobalBlocklistRequestSchema>;
export type UpdateLeadByIdRequest = z.infer<typeof UpdateLeadByIdRequestSchema>;
export type UpdateLeadCategoryRequest = z.infer<typeof UpdateLeadCategoryRequestSchema>;
export type FetchLeadMessageHistoryRequest = z.infer<typeof FetchLeadMessageHistoryRequestSchema>;
export type ReplyToLeadFromMasterInboxRequest = z.infer<typeof ReplyToLeadFromMasterInboxRequestSchema>;
export type ForwardReplyRequest = z.infer<typeof ForwardReplyRequestSchema>;
/**
 * Schema for analytics campaign list request
 */
export declare const AnalyticsCampaignListRequestSchema: z.ZodObject<{
    client_ids: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    client_ids?: string | undefined;
}, {
    client_ids?: string | undefined;
}>;
/**
 * Schema for analytics client list request
 */
export declare const AnalyticsClientListRequestSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
/**
 * Schema for monthly client count request
 */
export declare const AnalyticsClientMonthWiseCountRequestSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
/**
 * Schema for overall analytics request
 */
export declare const AnalyticsOverallStatsV2RequestSchema: z.ZodObject<{
    start_date: z.ZodString;
    end_date: z.ZodString;
    timezone: z.ZodDefault<z.ZodString>;
    full_data: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
    timezone: string;
    start_date: string;
    end_date: string;
    full_data: boolean;
}, {
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
    full_data?: boolean | undefined;
}>;
/**
 * Schema for day-wise overall analytics request
 */
export declare const AnalyticsDayWiseOverallStatsRequestSchema: z.ZodObject<{
    start_date: z.ZodString;
    end_date: z.ZodString;
    timezone: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    timezone: string;
    start_date: string;
    end_date: string;
}, {
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
}>;
/**
 * Schema for email health metrics request
 */
export declare const AnalyticsMailboxNameWiseHealthMetricsRequestSchema: z.ZodObject<{
    start_date: z.ZodString;
    end_date: z.ZodString;
    timezone: z.ZodDefault<z.ZodString>;
    full_data: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
    timezone: string;
    start_date: string;
    end_date: string;
    full_data: boolean;
}, {
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
    full_data?: boolean | undefined;
}>;
/**
 * Schema for domain health metrics request
 */
export declare const AnalyticsMailboxDomainWiseHealthMetricsRequestSchema: z.ZodObject<{
    start_date: z.ZodString;
    end_date: z.ZodString;
    timezone: z.ZodDefault<z.ZodString>;
    full_data: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
    timezone: string;
    start_date: string;
    end_date: string;
    full_data: boolean;
}, {
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
    full_data?: boolean | undefined;
}>;
/**
 * Schema for email provider health metrics request
 */
export declare const AnalyticsMailboxProviderWiseOverallPerformanceRequestSchema: z.ZodObject<{
    start_date: z.ZodString;
    end_date: z.ZodString;
    timezone: z.ZodDefault<z.ZodString>;
    full_data: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
    timezone: string;
    start_date: string;
    end_date: string;
    full_data: boolean;
}, {
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
    full_data?: boolean | undefined;
}>;
/**
 * Schema for campaign overall stats request
 */
export declare const AnalyticsCampaignOverallStatsRequestSchema: z.ZodObject<{
    start_date: z.ZodString;
    end_date: z.ZodString;
    timezone: z.ZodDefault<z.ZodString>;
    full_data: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
    timezone: string;
    start_date: string;
    end_date: string;
    full_data: boolean;
}, {
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
    full_data?: boolean | undefined;
}>;
/**
 * Schema for client overall stats request
 */
export declare const AnalyticsClientOverallStatsRequestSchema: z.ZodObject<{
    start_date: z.ZodString;
    end_date: z.ZodString;
    timezone: z.ZodDefault<z.ZodString>;
    full_data: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
    timezone: string;
    start_date: string;
    end_date: string;
    full_data: boolean;
}, {
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
    full_data?: boolean | undefined;
}>;
/**
 * Schema for team board stats request
 */
export declare const AnalyticsTeamBoardOverallStatsRequestSchema: z.ZodObject<{
    start_date: z.ZodString;
    end_date: z.ZodString;
    timezone: z.ZodDefault<z.ZodString>;
    full_data: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
    timezone: string;
    start_date: string;
    end_date: string;
    full_data: boolean;
}, {
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
    full_data?: boolean | undefined;
}>;
/**
 * Schema for lead stats request
 */
export declare const AnalyticsLeadOverallStatsRequestSchema: z.ZodObject<{
    start_date: z.ZodString;
    end_date: z.ZodString;
    timezone: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    timezone: string;
    start_date: string;
    end_date: string;
}, {
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
}>;
/**
 * Schema for lead response category wise request
 */
export declare const AnalyticsLeadCategoryWiseResponseRequestSchema: z.ZodObject<{
    start_date: z.ZodString;
    end_date: z.ZodString;
    timezone: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    timezone: string;
    start_date: string;
    end_date: string;
}, {
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
}>;
/**
 * Schema for leads take for first reply request
 */
export declare const AnalyticsCampaignLeadsTakeForFirstReplyRequestSchema: z.ZodObject<{
    start_date: z.ZodString;
    end_date: z.ZodString;
    timezone: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    timezone: string;
    start_date: string;
    end_date: string;
}, {
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
}>;
/**
 * Schema for follow up reply rate request
 */
export declare const AnalyticsCampaignFollowUpReplyRateRequestSchema: z.ZodObject<{
    start_date: z.ZodString;
    end_date: z.ZodString;
    timezone: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    timezone: string;
    start_date: string;
    end_date: string;
}, {
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
}>;
/**
 * Schema for lead to reply time request
 */
export declare const AnalyticsCampaignLeadToReplyTimeRequestSchema: z.ZodObject<{
    start_date: z.ZodString;
    end_date: z.ZodString;
    timezone: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    timezone: string;
    start_date: string;
    end_date: string;
}, {
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
}>;
/**
 * Schema for campaign response stats request
 */
export declare const AnalyticsCampaignResponseStatsRequestSchema: z.ZodObject<{
    start_date: z.ZodString;
    end_date: z.ZodString;
    timezone: z.ZodDefault<z.ZodString>;
    full_data: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
    timezone: string;
    start_date: string;
    end_date: string;
    full_data: boolean;
}, {
    start_date: string;
    end_date: string;
    timezone?: string | undefined;
    full_data?: boolean | undefined;
}>;
/**
 * Schema for campaign status stats request
 */
export declare const AnalyticsCampaignStatusStatsRequestSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
/**
 * Schema for mailbox overall stats request
 */
export declare const AnalyticsMailboxOverallStatsRequestSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
export type AnalyticsCampaignListRequest = z.infer<typeof AnalyticsCampaignListRequestSchema>;
export type AnalyticsClientListRequest = z.infer<typeof AnalyticsClientListRequestSchema>;
export type AnalyticsClientMonthWiseCountRequest = z.infer<typeof AnalyticsClientMonthWiseCountRequestSchema>;
export type AnalyticsOverallStatsV2Request = z.infer<typeof AnalyticsOverallStatsV2RequestSchema>;
export type AnalyticsDayWiseOverallStatsRequest = z.infer<typeof AnalyticsDayWiseOverallStatsRequestSchema>;
export type AnalyticsMailboxNameWiseHealthMetricsRequest = z.infer<typeof AnalyticsMailboxNameWiseHealthMetricsRequestSchema>;
export type AnalyticsMailboxDomainWiseHealthMetricsRequest = z.infer<typeof AnalyticsMailboxDomainWiseHealthMetricsRequestSchema>;
export type AnalyticsMailboxProviderWiseOverallPerformanceRequest = z.infer<typeof AnalyticsMailboxProviderWiseOverallPerformanceRequestSchema>;
export type AnalyticsCampaignOverallStatsRequest = z.infer<typeof AnalyticsCampaignOverallStatsRequestSchema>;
export type AnalyticsClientOverallStatsRequest = z.infer<typeof AnalyticsClientOverallStatsRequestSchema>;
export type AnalyticsTeamBoardOverallStatsRequest = z.infer<typeof AnalyticsTeamBoardOverallStatsRequestSchema>;
export type AnalyticsLeadOverallStatsRequest = z.infer<typeof AnalyticsLeadOverallStatsRequestSchema>;
export type AnalyticsLeadCategoryWiseResponseRequest = z.infer<typeof AnalyticsLeadCategoryWiseResponseRequestSchema>;
export type AnalyticsCampaignLeadsTakeForFirstReplyRequest = z.infer<typeof AnalyticsCampaignLeadsTakeForFirstReplyRequestSchema>;
export type AnalyticsCampaignFollowUpReplyRateRequest = z.infer<typeof AnalyticsCampaignFollowUpReplyRateRequestSchema>;
export type AnalyticsCampaignLeadToReplyTimeRequest = z.infer<typeof AnalyticsCampaignLeadToReplyTimeRequestSchema>;
export type AnalyticsCampaignResponseStatsRequest = z.infer<typeof AnalyticsCampaignResponseStatsRequestSchema>;
export type AnalyticsCampaignStatusStatsRequest = z.infer<typeof AnalyticsCampaignStatusStatsRequestSchema>;
export type AnalyticsMailboxOverallStatsRequest = z.infer<typeof AnalyticsMailboxOverallStatsRequestSchema>;
//# sourceMappingURL=types.d.ts.map