export * from "./account";
export * from "./payment";
export * from "./response";
export declare namespace PayChangu {
    type Currency = "MWK";
    interface TransactionCharges {
        currency: string;
        amount: string | number;
    }
    interface BaseTransaction {
        charge_id: string;
        ref_id: string;
        trans_id: string | null;
        currency: string;
        amount: number;
        first_name: string | null;
        last_name: string | null;
        email: string | null;
        type: string;
        trace_id: string | null;
        status: string;
        mobile: string;
        attempts: number;
        mode: string;
        created_at: string;
        completed_at: string | null;
        event_type: string;
        transaction_charges: TransactionCharges;
    }
    interface Pagination {
        current_page: number;
        total_pages: number;
        per_page: number;
        next_page_url: string | null;
    }
    interface RequestOptions {
        email?: string;
        firstName?: string;
        lastName?: string;
    }
    type PaymentMethod = "mobile_bank_transfer" | "bank_transfer";
    type ServiceResponseType = "success" | "error";
    interface ServiceResponsePayload {
        HasError: boolean;
        StackTraceError?: unknown;
    }
    interface ServiceResponse<T extends ServiceResponsePayload> {
        type: ServiceResponseType;
        payload: T;
    }
    interface PayChanguVerifiedTransaction {
        event_type: string;
        tx_ref: string;
        mode: string;
        type: string;
        status: string;
        number_of_attempts: number;
        reference: string;
        currency: string;
        amount: number;
        charges: number;
        customization: {
            title: string;
            description: string;
            logo: string | null;
        };
        meta: Record<string, unknown> | null;
        authorization: {
            channel: string;
            card_number?: string;
            expiry?: string;
            brand?: string;
            provider: string | null;
            mobile_number: string | null;
            completed_at: string;
        };
        customer: {
            email: string;
            first_name: string;
            last_name: string;
        };
        logs: Array<{
            type: string;
            message: string;
            created_at: string;
        }>;
        created_at: string;
        updated_at: string;
    }
}
//# sourceMappingURL=index.d.ts.map