import { Types, HydratedDocument } from 'mongoose';
export type PaymentBankMatchDocument = HydratedDocument<PaymentBankMatch>;
export declare enum MatchType {
    AUTO_REFERENCE = "AUTO_REFERENCE",
    SUGGESTED_AMOUNT_DATE = "SUGGESTED_AMOUNT_DATE",
    MANUAL = "MANUAL"
}
export declare enum MatchConfidence {
    HIGH = "HIGH",
    LOW = "LOW"
}
export declare class PaymentBankMatch {
    business_id: Types.ObjectId;
    payment_id: Types.ObjectId;
    bank_transaction_id: Types.ObjectId;
    reason: string;
    match_type: MatchType;
    match_confidence: MatchConfidence;
    matched_by: Types.ObjectId;
    matched_at: number;
    unlinked_at: number;
    unlinked_by: Types.ObjectId;
    is_demo: boolean;
    created_at: number;
}
export declare const PaymentBankMatchSchema: import("mongoose").Schema<PaymentBankMatch, import("mongoose").Model<PaymentBankMatch, any, any, any, import("mongoose").Document<unknown, any, PaymentBankMatch, any> & PaymentBankMatch & {
    _id: Types.ObjectId;
} & {
    __v: number;
}, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, PaymentBankMatch, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<PaymentBankMatch>, {}> & import("mongoose").FlatRecord<PaymentBankMatch> & {
    _id: Types.ObjectId;
} & {
    __v: number;
}>;
