import { ObjectId } from "mongodb";
import { z } from "zod";
export declare const DealStatusEnum: z.ZodEnum<["default", "liked", "disliked", "deleted", "email"]>;
export declare const ProcessingStatusEnum: z.ZodEnum<["pending", "completed", "failed"]>;
export declare const LinkParsingStatusEnum: z.ZodEnum<["pending", "completed"]>;
export declare const LinkStatusEnum: z.ZodEnum<["parsing_pending", "parsed_success", "parsing_failed"]>;
export declare const SourceTypeEnum: z.ZodEnum<["personal_linkedin", "company_linkedin", "youtube", "docsend", "google_drive", "google_docs", "dropbox", "vimeo", "pitch", "canva", "calameo", "maildoc", "figma", "brieflink", "other", "file"]>;
export declare const DealSourceEnum: z.ZodEnum<["email", "file", "upload"]>;
export declare const CompanyInfoSchema: z.ZodObject<{
    name: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    description: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    logo_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    investment_status: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    country_id: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    website: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    linkedin_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    name: string | null;
    description: string | null;
    logo_url: string | null;
    investment_status: string | null;
    country_id: string | null;
    website: string | null;
    linkedin_url: string | null;
}, {
    name?: string | null | undefined;
    description?: string | null | undefined;
    logo_url?: string | null | undefined;
    investment_status?: string | null | undefined;
    country_id?: string | null | undefined;
    website?: string | null | undefined;
    linkedin_url?: string | null | undefined;
}>;
export declare const FounderInfoSchema: z.ZodObject<{
    first_name: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    last_name: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    position: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    bio: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    linkedin_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    linkedin_url: string | null;
    first_name: string | null;
    last_name: string | null;
    position: string | null;
    bio: string | null;
}, {
    linkedin_url?: string | null | undefined;
    first_name?: string | null | undefined;
    last_name?: string | null | undefined;
    position?: string | null | undefined;
    bio?: string | null | undefined;
}>;
export declare const BusinessMetricsSchema: z.ZodObject<{
    business_model: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    verticals: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
    geography: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
    stage: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    arr: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
    mrr: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
    sales_geography: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
    focus_geography: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
}, "strip", z.ZodTypeAny, {
    business_model: string | null;
    verticals: string[] | null;
    geography: string[] | null;
    stage: string | null;
    arr: number | null;
    mrr: number | null;
    sales_geography: string[] | null;
    focus_geography: string[] | null;
}, {
    business_model?: string | null | undefined;
    verticals?: string[] | null | undefined;
    geography?: string[] | null | undefined;
    stage?: string | null | undefined;
    arr?: number | null | undefined;
    mrr?: number | null | undefined;
    sales_geography?: string[] | null | undefined;
    focus_geography?: string[] | null | undefined;
}>;
export declare const FundraisingInfoSchema: z.ZodObject<{
    round: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    target_amount: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
    raised_amount: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
    valuation: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
    pitch_deck_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    pitch_video_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    round: string | null;
    target_amount: number | null;
    raised_amount: number | null;
    valuation: number | null;
    pitch_deck_url: string | null;
    pitch_video_url: string | null;
}, {
    round?: string | null | undefined;
    target_amount?: number | null | undefined;
    raised_amount?: number | null | undefined;
    valuation?: number | null | undefined;
    pitch_deck_url?: string | null | undefined;
    pitch_video_url?: string | null | undefined;
}>;
export declare const DealProfileSchema: z.ZodObject<{
    external_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    company_info: z.ZodNullable<z.ZodObject<{
        name: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        description: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        logo_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        investment_status: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        country_id: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        website: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        linkedin_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    }, "strip", z.ZodTypeAny, {
        name: string | null;
        description: string | null;
        logo_url: string | null;
        investment_status: string | null;
        country_id: string | null;
        website: string | null;
        linkedin_url: string | null;
    }, {
        name?: string | null | undefined;
        description?: string | null | undefined;
        logo_url?: string | null | undefined;
        investment_status?: string | null | undefined;
        country_id?: string | null | undefined;
        website?: string | null | undefined;
        linkedin_url?: string | null | undefined;
    }>>;
    founder_info: z.ZodNullable<z.ZodObject<{
        first_name: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        last_name: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        position: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        bio: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        linkedin_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    }, "strip", z.ZodTypeAny, {
        linkedin_url: string | null;
        first_name: string | null;
        last_name: string | null;
        position: string | null;
        bio: string | null;
    }, {
        linkedin_url?: string | null | undefined;
        first_name?: string | null | undefined;
        last_name?: string | null | undefined;
        position?: string | null | undefined;
        bio?: string | null | undefined;
    }>>;
    business_metrics: z.ZodNullable<z.ZodObject<{
        business_model: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        verticals: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
        geography: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
        stage: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        arr: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
        mrr: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
        sales_geography: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
        focus_geography: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
    }, "strip", z.ZodTypeAny, {
        business_model: string | null;
        verticals: string[] | null;
        geography: string[] | null;
        stage: string | null;
        arr: number | null;
        mrr: number | null;
        sales_geography: string[] | null;
        focus_geography: string[] | null;
    }, {
        business_model?: string | null | undefined;
        verticals?: string[] | null | undefined;
        geography?: string[] | null | undefined;
        stage?: string | null | undefined;
        arr?: number | null | undefined;
        mrr?: number | null | undefined;
        sales_geography?: string[] | null | undefined;
        focus_geography?: string[] | null | undefined;
    }>>;
    fundraising: z.ZodNullable<z.ZodObject<{
        round: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        target_amount: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
        raised_amount: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
        valuation: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
        pitch_deck_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        pitch_video_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    }, "strip", z.ZodTypeAny, {
        round: string | null;
        target_amount: number | null;
        raised_amount: number | null;
        valuation: number | null;
        pitch_deck_url: string | null;
        pitch_video_url: string | null;
    }, {
        round?: string | null | undefined;
        target_amount?: number | null | undefined;
        raised_amount?: number | null | undefined;
        valuation?: number | null | undefined;
        pitch_deck_url?: string | null | undefined;
        pitch_video_url?: string | null | undefined;
    }>>;
    additional_details: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodAny>>;
}, "strip", z.ZodTypeAny, {
    company_info: {
        name: string | null;
        description: string | null;
        logo_url: string | null;
        investment_status: string | null;
        country_id: string | null;
        website: string | null;
        linkedin_url: string | null;
    } | null;
    founder_info: {
        linkedin_url: string | null;
        first_name: string | null;
        last_name: string | null;
        position: string | null;
        bio: string | null;
    } | null;
    business_metrics: {
        business_model: string | null;
        verticals: string[] | null;
        geography: string[] | null;
        stage: string | null;
        arr: number | null;
        mrr: number | null;
        sales_geography: string[] | null;
        focus_geography: string[] | null;
    } | null;
    fundraising: {
        round: string | null;
        target_amount: number | null;
        raised_amount: number | null;
        valuation: number | null;
        pitch_deck_url: string | null;
        pitch_video_url: string | null;
    } | null;
    additional_details: Record<string, any> | null;
    external_id?: string | null | undefined;
}, {
    company_info: {
        name?: string | null | undefined;
        description?: string | null | undefined;
        logo_url?: string | null | undefined;
        investment_status?: string | null | undefined;
        country_id?: string | null | undefined;
        website?: string | null | undefined;
        linkedin_url?: string | null | undefined;
    } | null;
    founder_info: {
        linkedin_url?: string | null | undefined;
        first_name?: string | null | undefined;
        last_name?: string | null | undefined;
        position?: string | null | undefined;
        bio?: string | null | undefined;
    } | null;
    business_metrics: {
        business_model?: string | null | undefined;
        verticals?: string[] | null | undefined;
        geography?: string[] | null | undefined;
        stage?: string | null | undefined;
        arr?: number | null | undefined;
        mrr?: number | null | undefined;
        sales_geography?: string[] | null | undefined;
        focus_geography?: string[] | null | undefined;
    } | null;
    fundraising: {
        round?: string | null | undefined;
        target_amount?: number | null | undefined;
        raised_amount?: number | null | undefined;
        valuation?: number | null | undefined;
        pitch_deck_url?: string | null | undefined;
        pitch_video_url?: string | null | undefined;
    } | null;
    additional_details: Record<string, any> | null;
    external_id?: string | null | undefined;
}>;
export declare const LinkParsingResultSchema: z.ZodObject<{
    url: z.ZodString;
    status: z.ZodEnum<["parsing_pending", "parsed_success", "parsing_failed"]>;
    type: z.ZodEnum<["personal_linkedin", "company_linkedin", "youtube", "docsend", "google_drive", "google_docs", "dropbox", "vimeo", "pitch", "canva", "calameo", "maildoc", "figma", "brieflink", "other", "file"]>;
    parsed_at: z.ZodNullable<z.ZodDate>;
    error_message: z.ZodNullable<z.ZodString>;
    retries: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
    status: "parsing_pending" | "parsed_success" | "parsing_failed";
    url: string;
    parsed_at: Date | null;
    error_message: string | null;
    retries: number;
}, {
    type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
    status: "parsing_pending" | "parsed_success" | "parsing_failed";
    url: string;
    parsed_at: Date | null;
    error_message: string | null;
    retries?: number | undefined;
}>;
export declare const FileAttachmentSchema: z.ZodObject<{
    file_url: z.ZodString;
    filename: z.ZodString;
    uploaded_at: z.ZodDate;
}, "strip", z.ZodTypeAny, {
    file_url: string;
    filename: string;
    uploaded_at: Date;
}, {
    file_url: string;
    filename: string;
    uploaded_at: Date;
}>;
export declare const RawInputSchema: z.ZodObject<{
    text: z.ZodDefault<z.ZodString>;
    attachments: z.ZodDefault<z.ZodArray<z.ZodObject<{
        file_url: z.ZodString;
        filename: z.ZodString;
        uploaded_at: z.ZodDate;
    }, "strip", z.ZodTypeAny, {
        file_url: string;
        filename: string;
        uploaded_at: Date;
    }, {
        file_url: string;
        filename: string;
        uploaded_at: Date;
    }>, "many">>;
    received_at: z.ZodDefault<z.ZodDate>;
}, "strip", z.ZodTypeAny, {
    text: string;
    attachments: {
        file_url: string;
        filename: string;
        uploaded_at: Date;
    }[];
    received_at: Date;
}, {
    text?: string | undefined;
    attachments?: {
        file_url: string;
        filename: string;
        uploaded_at: Date;
    }[] | undefined;
    received_at?: Date | undefined;
}>;
export declare const EnrichmentMetadataSchema: z.ZodObject<{
    last_enrichment_date: z.ZodNullable<z.ZodDate>;
    raw_input: z.ZodObject<{
        text: z.ZodDefault<z.ZodString>;
        attachments: z.ZodDefault<z.ZodArray<z.ZodObject<{
            file_url: z.ZodString;
            filename: z.ZodString;
            uploaded_at: z.ZodDate;
        }, "strip", z.ZodTypeAny, {
            file_url: string;
            filename: string;
            uploaded_at: Date;
        }, {
            file_url: string;
            filename: string;
            uploaded_at: Date;
        }>, "many">>;
        received_at: z.ZodDefault<z.ZodDate>;
    }, "strip", z.ZodTypeAny, {
        text: string;
        attachments: {
            file_url: string;
            filename: string;
            uploaded_at: Date;
        }[];
        received_at: Date;
    }, {
        text?: string | undefined;
        attachments?: {
            file_url: string;
            filename: string;
            uploaded_at: Date;
        }[] | undefined;
        received_at?: Date | undefined;
    }>;
    source_data: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
        raw_data: z.ZodAny;
        processed_at: z.ZodDate;
        source_type: z.ZodEnum<["personal_linkedin", "company_linkedin", "youtube", "docsend", "google_drive", "google_docs", "dropbox", "vimeo", "pitch", "canva", "calameo", "maildoc", "figma", "brieflink", "other", "file"]>;
    }, "strip", z.ZodTypeAny, {
        processed_at: Date;
        source_type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
        raw_data?: any;
    }, {
        processed_at: Date;
        source_type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
        raw_data?: any;
    }>>>;
    processing_status: z.ZodObject<{
        link_parsing_status: z.ZodDefault<z.ZodEnum<["pending", "completed"]>>;
        raw_input_parsing_status: z.ZodDefault<z.ZodEnum<["pending", "completed"]>>;
        link_parsing_results: z.ZodDefault<z.ZodArray<z.ZodObject<{
            url: z.ZodString;
            status: z.ZodEnum<["parsing_pending", "parsed_success", "parsing_failed"]>;
            type: z.ZodEnum<["personal_linkedin", "company_linkedin", "youtube", "docsend", "google_drive", "google_docs", "dropbox", "vimeo", "pitch", "canva", "calameo", "maildoc", "figma", "brieflink", "other", "file"]>;
            parsed_at: z.ZodNullable<z.ZodDate>;
            error_message: z.ZodNullable<z.ZodString>;
            retries: z.ZodDefault<z.ZodNumber>;
        }, "strip", z.ZodTypeAny, {
            type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
            status: "parsing_pending" | "parsed_success" | "parsing_failed";
            url: string;
            parsed_at: Date | null;
            error_message: string | null;
            retries: number;
        }, {
            type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
            status: "parsing_pending" | "parsed_success" | "parsing_failed";
            url: string;
            parsed_at: Date | null;
            error_message: string | null;
            retries?: number | undefined;
        }>, "many">>;
    }, "strip", z.ZodTypeAny, {
        link_parsing_status: "pending" | "completed";
        raw_input_parsing_status: "pending" | "completed";
        link_parsing_results: {
            type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
            status: "parsing_pending" | "parsed_success" | "parsing_failed";
            url: string;
            parsed_at: Date | null;
            error_message: string | null;
            retries: number;
        }[];
    }, {
        link_parsing_status?: "pending" | "completed" | undefined;
        raw_input_parsing_status?: "pending" | "completed" | undefined;
        link_parsing_results?: {
            type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
            status: "parsing_pending" | "parsed_success" | "parsing_failed";
            url: string;
            parsed_at: Date | null;
            error_message: string | null;
            retries?: number | undefined;
        }[] | undefined;
    }>;
}, "strip", z.ZodTypeAny, {
    last_enrichment_date: Date | null;
    raw_input: {
        text: string;
        attachments: {
            file_url: string;
            filename: string;
            uploaded_at: Date;
        }[];
        received_at: Date;
    };
    source_data: Record<string, {
        processed_at: Date;
        source_type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
        raw_data?: any;
    }>;
    processing_status: {
        link_parsing_status: "pending" | "completed";
        raw_input_parsing_status: "pending" | "completed";
        link_parsing_results: {
            type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
            status: "parsing_pending" | "parsed_success" | "parsing_failed";
            url: string;
            parsed_at: Date | null;
            error_message: string | null;
            retries: number;
        }[];
    };
}, {
    last_enrichment_date: Date | null;
    raw_input: {
        text?: string | undefined;
        attachments?: {
            file_url: string;
            filename: string;
            uploaded_at: Date;
        }[] | undefined;
        received_at?: Date | undefined;
    };
    processing_status: {
        link_parsing_status?: "pending" | "completed" | undefined;
        raw_input_parsing_status?: "pending" | "completed" | undefined;
        link_parsing_results?: {
            type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
            status: "parsing_pending" | "parsed_success" | "parsing_failed";
            url: string;
            parsed_at: Date | null;
            error_message: string | null;
            retries?: number | undefined;
        }[] | undefined;
    };
    source_data?: Record<string, {
        processed_at: Date;
        source_type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
        raw_data?: any;
    }> | undefined;
}>;
export declare const DealFactorSchema: z.ZodObject<{
    factor: z.ZodString;
    explanation: z.ZodString;
    impact: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
    factor: string;
    explanation: string;
    impact?: number | undefined;
}, {
    factor: string;
    explanation: string;
    impact?: number | undefined;
}>;
export declare const DealScoringSchema: z.ZodObject<{
    score: z.ZodDefault<z.ZodNumber>;
    factors: z.ZodDefault<z.ZodArray<z.ZodObject<{
        factor: z.ZodString;
        explanation: z.ZodString;
        impact: z.ZodOptional<z.ZodNumber>;
    }, "strip", z.ZodTypeAny, {
        factor: string;
        explanation: string;
        impact?: number | undefined;
    }, {
        factor: string;
        explanation: string;
        impact?: number | undefined;
    }>, "many">>;
}, "strip", z.ZodTypeAny, {
    score: number;
    factors: {
        factor: string;
        explanation: string;
        impact?: number | undefined;
    }[];
}, {
    score?: number | undefined;
    factors?: {
        factor: string;
        explanation: string;
        impact?: number | undefined;
    }[] | undefined;
}>;
export declare const DealTagSchema: z.ZodObject<{
    id: z.ZodNumber;
    name: z.ZodDefault<z.ZodString>;
    description: z.ZodDefault<z.ZodString>;
    color: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    name: string;
    description: string;
    id: number;
    color: string;
}, {
    id: number;
    name?: string | undefined;
    description?: string | undefined;
    color?: string | undefined;
}>;
export declare const DealSchema: z.ZodObject<{
    investor_email: z.ZodNullable<z.ZodString>;
    status: z.ZodDefault<z.ZodEnum<["default", "liked", "disliked", "deleted", "email"]>>;
    new: z.ZodDefault<z.ZodBoolean>;
    stage: z.ZodDefault<z.ZodNullable<z.ZodString>>;
    tags: z.ZodDefault<z.ZodArray<z.ZodNumber, "many">>;
    source: z.ZodDefault<z.ZodEnum<["email", "file", "upload"]>>;
    profile: z.ZodObject<{
        external_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        company_info: z.ZodNullable<z.ZodObject<{
            name: z.ZodDefault<z.ZodNullable<z.ZodString>>;
            description: z.ZodDefault<z.ZodNullable<z.ZodString>>;
            logo_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
            investment_status: z.ZodDefault<z.ZodNullable<z.ZodString>>;
            country_id: z.ZodDefault<z.ZodNullable<z.ZodString>>;
            website: z.ZodDefault<z.ZodNullable<z.ZodString>>;
            linkedin_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        }, "strip", z.ZodTypeAny, {
            name: string | null;
            description: string | null;
            logo_url: string | null;
            investment_status: string | null;
            country_id: string | null;
            website: string | null;
            linkedin_url: string | null;
        }, {
            name?: string | null | undefined;
            description?: string | null | undefined;
            logo_url?: string | null | undefined;
            investment_status?: string | null | undefined;
            country_id?: string | null | undefined;
            website?: string | null | undefined;
            linkedin_url?: string | null | undefined;
        }>>;
        founder_info: z.ZodNullable<z.ZodObject<{
            first_name: z.ZodDefault<z.ZodNullable<z.ZodString>>;
            last_name: z.ZodDefault<z.ZodNullable<z.ZodString>>;
            position: z.ZodDefault<z.ZodNullable<z.ZodString>>;
            bio: z.ZodDefault<z.ZodNullable<z.ZodString>>;
            linkedin_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        }, "strip", z.ZodTypeAny, {
            linkedin_url: string | null;
            first_name: string | null;
            last_name: string | null;
            position: string | null;
            bio: string | null;
        }, {
            linkedin_url?: string | null | undefined;
            first_name?: string | null | undefined;
            last_name?: string | null | undefined;
            position?: string | null | undefined;
            bio?: string | null | undefined;
        }>>;
        business_metrics: z.ZodNullable<z.ZodObject<{
            business_model: z.ZodDefault<z.ZodNullable<z.ZodString>>;
            verticals: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
            geography: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
            stage: z.ZodDefault<z.ZodNullable<z.ZodString>>;
            arr: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
            mrr: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
            sales_geography: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
            focus_geography: z.ZodDefault<z.ZodNullable<z.ZodArray<z.ZodString, "many">>>;
        }, "strip", z.ZodTypeAny, {
            business_model: string | null;
            verticals: string[] | null;
            geography: string[] | null;
            stage: string | null;
            arr: number | null;
            mrr: number | null;
            sales_geography: string[] | null;
            focus_geography: string[] | null;
        }, {
            business_model?: string | null | undefined;
            verticals?: string[] | null | undefined;
            geography?: string[] | null | undefined;
            stage?: string | null | undefined;
            arr?: number | null | undefined;
            mrr?: number | null | undefined;
            sales_geography?: string[] | null | undefined;
            focus_geography?: string[] | null | undefined;
        }>>;
        fundraising: z.ZodNullable<z.ZodObject<{
            round: z.ZodDefault<z.ZodNullable<z.ZodString>>;
            target_amount: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
            raised_amount: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
            valuation: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
            pitch_deck_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
            pitch_video_url: z.ZodDefault<z.ZodNullable<z.ZodString>>;
        }, "strip", z.ZodTypeAny, {
            round: string | null;
            target_amount: number | null;
            raised_amount: number | null;
            valuation: number | null;
            pitch_deck_url: string | null;
            pitch_video_url: string | null;
        }, {
            round?: string | null | undefined;
            target_amount?: number | null | undefined;
            raised_amount?: number | null | undefined;
            valuation?: number | null | undefined;
            pitch_deck_url?: string | null | undefined;
            pitch_video_url?: string | null | undefined;
        }>>;
        additional_details: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, "strip", z.ZodTypeAny, {
        company_info: {
            name: string | null;
            description: string | null;
            logo_url: string | null;
            investment_status: string | null;
            country_id: string | null;
            website: string | null;
            linkedin_url: string | null;
        } | null;
        founder_info: {
            linkedin_url: string | null;
            first_name: string | null;
            last_name: string | null;
            position: string | null;
            bio: string | null;
        } | null;
        business_metrics: {
            business_model: string | null;
            verticals: string[] | null;
            geography: string[] | null;
            stage: string | null;
            arr: number | null;
            mrr: number | null;
            sales_geography: string[] | null;
            focus_geography: string[] | null;
        } | null;
        fundraising: {
            round: string | null;
            target_amount: number | null;
            raised_amount: number | null;
            valuation: number | null;
            pitch_deck_url: string | null;
            pitch_video_url: string | null;
        } | null;
        additional_details: Record<string, any> | null;
        external_id?: string | null | undefined;
    }, {
        company_info: {
            name?: string | null | undefined;
            description?: string | null | undefined;
            logo_url?: string | null | undefined;
            investment_status?: string | null | undefined;
            country_id?: string | null | undefined;
            website?: string | null | undefined;
            linkedin_url?: string | null | undefined;
        } | null;
        founder_info: {
            linkedin_url?: string | null | undefined;
            first_name?: string | null | undefined;
            last_name?: string | null | undefined;
            position?: string | null | undefined;
            bio?: string | null | undefined;
        } | null;
        business_metrics: {
            business_model?: string | null | undefined;
            verticals?: string[] | null | undefined;
            geography?: string[] | null | undefined;
            stage?: string | null | undefined;
            arr?: number | null | undefined;
            mrr?: number | null | undefined;
            sales_geography?: string[] | null | undefined;
            focus_geography?: string[] | null | undefined;
        } | null;
        fundraising: {
            round?: string | null | undefined;
            target_amount?: number | null | undefined;
            raised_amount?: number | null | undefined;
            valuation?: number | null | undefined;
            pitch_deck_url?: string | null | undefined;
            pitch_video_url?: string | null | undefined;
        } | null;
        additional_details: Record<string, any> | null;
        external_id?: string | null | undefined;
    }>;
    enrichment_metadata: z.ZodObject<{
        last_enrichment_date: z.ZodNullable<z.ZodDate>;
        raw_input: z.ZodObject<{
            text: z.ZodDefault<z.ZodString>;
            attachments: z.ZodDefault<z.ZodArray<z.ZodObject<{
                file_url: z.ZodString;
                filename: z.ZodString;
                uploaded_at: z.ZodDate;
            }, "strip", z.ZodTypeAny, {
                file_url: string;
                filename: string;
                uploaded_at: Date;
            }, {
                file_url: string;
                filename: string;
                uploaded_at: Date;
            }>, "many">>;
            received_at: z.ZodDefault<z.ZodDate>;
        }, "strip", z.ZodTypeAny, {
            text: string;
            attachments: {
                file_url: string;
                filename: string;
                uploaded_at: Date;
            }[];
            received_at: Date;
        }, {
            text?: string | undefined;
            attachments?: {
                file_url: string;
                filename: string;
                uploaded_at: Date;
            }[] | undefined;
            received_at?: Date | undefined;
        }>;
        source_data: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodObject<{
            raw_data: z.ZodAny;
            processed_at: z.ZodDate;
            source_type: z.ZodEnum<["personal_linkedin", "company_linkedin", "youtube", "docsend", "google_drive", "google_docs", "dropbox", "vimeo", "pitch", "canva", "calameo", "maildoc", "figma", "brieflink", "other", "file"]>;
        }, "strip", z.ZodTypeAny, {
            processed_at: Date;
            source_type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
            raw_data?: any;
        }, {
            processed_at: Date;
            source_type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
            raw_data?: any;
        }>>>;
        processing_status: z.ZodObject<{
            link_parsing_status: z.ZodDefault<z.ZodEnum<["pending", "completed"]>>;
            raw_input_parsing_status: z.ZodDefault<z.ZodEnum<["pending", "completed"]>>;
            link_parsing_results: z.ZodDefault<z.ZodArray<z.ZodObject<{
                url: z.ZodString;
                status: z.ZodEnum<["parsing_pending", "parsed_success", "parsing_failed"]>;
                type: z.ZodEnum<["personal_linkedin", "company_linkedin", "youtube", "docsend", "google_drive", "google_docs", "dropbox", "vimeo", "pitch", "canva", "calameo", "maildoc", "figma", "brieflink", "other", "file"]>;
                parsed_at: z.ZodNullable<z.ZodDate>;
                error_message: z.ZodNullable<z.ZodString>;
                retries: z.ZodDefault<z.ZodNumber>;
            }, "strip", z.ZodTypeAny, {
                type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
                status: "parsing_pending" | "parsed_success" | "parsing_failed";
                url: string;
                parsed_at: Date | null;
                error_message: string | null;
                retries: number;
            }, {
                type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
                status: "parsing_pending" | "parsed_success" | "parsing_failed";
                url: string;
                parsed_at: Date | null;
                error_message: string | null;
                retries?: number | undefined;
            }>, "many">>;
        }, "strip", z.ZodTypeAny, {
            link_parsing_status: "pending" | "completed";
            raw_input_parsing_status: "pending" | "completed";
            link_parsing_results: {
                type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
                status: "parsing_pending" | "parsed_success" | "parsing_failed";
                url: string;
                parsed_at: Date | null;
                error_message: string | null;
                retries: number;
            }[];
        }, {
            link_parsing_status?: "pending" | "completed" | undefined;
            raw_input_parsing_status?: "pending" | "completed" | undefined;
            link_parsing_results?: {
                type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
                status: "parsing_pending" | "parsed_success" | "parsing_failed";
                url: string;
                parsed_at: Date | null;
                error_message: string | null;
                retries?: number | undefined;
            }[] | undefined;
        }>;
    }, "strip", z.ZodTypeAny, {
        last_enrichment_date: Date | null;
        raw_input: {
            text: string;
            attachments: {
                file_url: string;
                filename: string;
                uploaded_at: Date;
            }[];
            received_at: Date;
        };
        source_data: Record<string, {
            processed_at: Date;
            source_type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
            raw_data?: any;
        }>;
        processing_status: {
            link_parsing_status: "pending" | "completed";
            raw_input_parsing_status: "pending" | "completed";
            link_parsing_results: {
                type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
                status: "parsing_pending" | "parsed_success" | "parsing_failed";
                url: string;
                parsed_at: Date | null;
                error_message: string | null;
                retries: number;
            }[];
        };
    }, {
        last_enrichment_date: Date | null;
        raw_input: {
            text?: string | undefined;
            attachments?: {
                file_url: string;
                filename: string;
                uploaded_at: Date;
            }[] | undefined;
            received_at?: Date | undefined;
        };
        processing_status: {
            link_parsing_status?: "pending" | "completed" | undefined;
            raw_input_parsing_status?: "pending" | "completed" | undefined;
            link_parsing_results?: {
                type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
                status: "parsing_pending" | "parsed_success" | "parsing_failed";
                url: string;
                parsed_at: Date | null;
                error_message: string | null;
                retries?: number | undefined;
            }[] | undefined;
        };
        source_data?: Record<string, {
            processed_at: Date;
            source_type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
            raw_data?: any;
        }> | undefined;
    }>;
    scoring: z.ZodObject<{
        score: z.ZodDefault<z.ZodNumber>;
        factors: z.ZodDefault<z.ZodArray<z.ZodObject<{
            factor: z.ZodString;
            explanation: z.ZodString;
            impact: z.ZodOptional<z.ZodNumber>;
        }, "strip", z.ZodTypeAny, {
            factor: string;
            explanation: string;
            impact?: number | undefined;
        }, {
            factor: string;
            explanation: string;
            impact?: number | undefined;
        }>, "many">>;
    }, "strip", z.ZodTypeAny, {
        score: number;
        factors: {
            factor: string;
            explanation: string;
            impact?: number | undefined;
        }[];
    }, {
        score?: number | undefined;
        factors?: {
            factor: string;
            explanation: string;
            impact?: number | undefined;
        }[] | undefined;
    }>;
    processing_status: z.ZodDefault<z.ZodEnum<["pending", "completed", "failed"]>>;
    created_at: z.ZodDefault<z.ZodDate>;
    updated_at: z.ZodNullable<z.ZodDefault<z.ZodDate>>;
}, "strip", z.ZodTypeAny, {
    status: "default" | "liked" | "disliked" | "deleted" | "email";
    stage: string | null;
    processing_status: "pending" | "completed" | "failed";
    investor_email: string | null;
    new: boolean;
    tags: number[];
    source: "email" | "file" | "upload";
    profile: {
        company_info: {
            name: string | null;
            description: string | null;
            logo_url: string | null;
            investment_status: string | null;
            country_id: string | null;
            website: string | null;
            linkedin_url: string | null;
        } | null;
        founder_info: {
            linkedin_url: string | null;
            first_name: string | null;
            last_name: string | null;
            position: string | null;
            bio: string | null;
        } | null;
        business_metrics: {
            business_model: string | null;
            verticals: string[] | null;
            geography: string[] | null;
            stage: string | null;
            arr: number | null;
            mrr: number | null;
            sales_geography: string[] | null;
            focus_geography: string[] | null;
        } | null;
        fundraising: {
            round: string | null;
            target_amount: number | null;
            raised_amount: number | null;
            valuation: number | null;
            pitch_deck_url: string | null;
            pitch_video_url: string | null;
        } | null;
        additional_details: Record<string, any> | null;
        external_id?: string | null | undefined;
    };
    enrichment_metadata: {
        last_enrichment_date: Date | null;
        raw_input: {
            text: string;
            attachments: {
                file_url: string;
                filename: string;
                uploaded_at: Date;
            }[];
            received_at: Date;
        };
        source_data: Record<string, {
            processed_at: Date;
            source_type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
            raw_data?: any;
        }>;
        processing_status: {
            link_parsing_status: "pending" | "completed";
            raw_input_parsing_status: "pending" | "completed";
            link_parsing_results: {
                type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
                status: "parsing_pending" | "parsed_success" | "parsing_failed";
                url: string;
                parsed_at: Date | null;
                error_message: string | null;
                retries: number;
            }[];
        };
    };
    scoring: {
        score: number;
        factors: {
            factor: string;
            explanation: string;
            impact?: number | undefined;
        }[];
    };
    created_at: Date;
    updated_at: Date | null;
}, {
    investor_email: string | null;
    profile: {
        company_info: {
            name?: string | null | undefined;
            description?: string | null | undefined;
            logo_url?: string | null | undefined;
            investment_status?: string | null | undefined;
            country_id?: string | null | undefined;
            website?: string | null | undefined;
            linkedin_url?: string | null | undefined;
        } | null;
        founder_info: {
            linkedin_url?: string | null | undefined;
            first_name?: string | null | undefined;
            last_name?: string | null | undefined;
            position?: string | null | undefined;
            bio?: string | null | undefined;
        } | null;
        business_metrics: {
            business_model?: string | null | undefined;
            verticals?: string[] | null | undefined;
            geography?: string[] | null | undefined;
            stage?: string | null | undefined;
            arr?: number | null | undefined;
            mrr?: number | null | undefined;
            sales_geography?: string[] | null | undefined;
            focus_geography?: string[] | null | undefined;
        } | null;
        fundraising: {
            round?: string | null | undefined;
            target_amount?: number | null | undefined;
            raised_amount?: number | null | undefined;
            valuation?: number | null | undefined;
            pitch_deck_url?: string | null | undefined;
            pitch_video_url?: string | null | undefined;
        } | null;
        additional_details: Record<string, any> | null;
        external_id?: string | null | undefined;
    };
    enrichment_metadata: {
        last_enrichment_date: Date | null;
        raw_input: {
            text?: string | undefined;
            attachments?: {
                file_url: string;
                filename: string;
                uploaded_at: Date;
            }[] | undefined;
            received_at?: Date | undefined;
        };
        processing_status: {
            link_parsing_status?: "pending" | "completed" | undefined;
            raw_input_parsing_status?: "pending" | "completed" | undefined;
            link_parsing_results?: {
                type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
                status: "parsing_pending" | "parsed_success" | "parsing_failed";
                url: string;
                parsed_at: Date | null;
                error_message: string | null;
                retries?: number | undefined;
            }[] | undefined;
        };
        source_data?: Record<string, {
            processed_at: Date;
            source_type: "personal_linkedin" | "company_linkedin" | "youtube" | "docsend" | "google_drive" | "google_docs" | "dropbox" | "vimeo" | "pitch" | "canva" | "calameo" | "maildoc" | "figma" | "brieflink" | "other" | "file";
            raw_data?: any;
        }> | undefined;
    };
    scoring: {
        score?: number | undefined;
        factors?: {
            factor: string;
            explanation: string;
            impact?: number | undefined;
        }[] | undefined;
    };
    status?: "default" | "liked" | "disliked" | "deleted" | "email" | undefined;
    stage?: string | null | undefined;
    processing_status?: "pending" | "completed" | "failed" | undefined;
    new?: boolean | undefined;
    tags?: number[] | undefined;
    source?: "email" | "file" | "upload" | undefined;
    created_at?: Date | undefined;
    updated_at?: Date | null | undefined;
}>;
export declare const StageSchema: z.ZodObject<{
    investor_email: z.ZodString;
    name: z.ZodString;
    order: z.ZodNumber;
    color: z.ZodString;
    created_at: z.ZodDefault<z.ZodDate>;
    updated_at: z.ZodNullable<z.ZodDefault<z.ZodDate>>;
}, "strip", z.ZodTypeAny, {
    name: string;
    color: string;
    investor_email: string;
    created_at: Date;
    updated_at: Date | null;
    order: number;
}, {
    name: string;
    color: string;
    investor_email: string;
    order: number;
    created_at?: Date | undefined;
    updated_at?: Date | null | undefined;
}>;
export type Stage = z.infer<typeof StageSchema>;
export type DealType = z.infer<typeof DealSchema>;
export type DealDocument = DealType & {
    _id: ObjectId;
};
export type StageDocument = Stage & {
    _id: ObjectId;
};
export type DealStatus = z.infer<typeof DealStatusEnum>;
export type LinkParsingStatus = z.infer<typeof LinkParsingStatusEnum>;
export type LinkStatus = z.infer<typeof LinkStatusEnum>;
export type SourceType = z.infer<typeof SourceTypeEnum>;
export type DealSource = z.infer<typeof DealSourceEnum>;
export type ProcessingStatus = z.infer<typeof ProcessingStatusEnum>;
export type CompanyInfo = z.infer<typeof CompanyInfoSchema>;
export type FounderInfo = z.infer<typeof FounderInfoSchema>;
export type BusinessMetrics = z.infer<typeof BusinessMetricsSchema>;
export type FundraisingInfo = z.infer<typeof FundraisingInfoSchema>;
export type DealProfile = z.infer<typeof DealProfileSchema>;
export type LinkParsingResult = z.infer<typeof LinkParsingResultSchema>;
export type EnrichmentMetadata = z.infer<typeof EnrichmentMetadataSchema>;
export type DealFactor = z.infer<typeof DealFactorSchema>;
export type DealScoring = z.infer<typeof DealScoringSchema>;
export type FileAttachment = z.infer<typeof FileAttachmentSchema>;
export type RawInput = z.infer<typeof RawInputSchema>;
export type DealTag = z.infer<typeof DealTagSchema>;
export type DealStatusType = z.infer<typeof DealStatusEnum>;
