import { PayrexxClient } from './payrexx-client';
type ChargeTransactionRequestData = {
    amount: number;
    purpose?: string;
    referenceId: string;
};
export type TransactionStatus = 'waiting' | 'confirmed' | 'cancelled' | 'declined' | 'authorized' | 'reserved' | 'refunded' | 'refundpending' | 'partially-refunded' | 'chargeback' | 'error' | '_ uncaptured';
type Subscription = object;
export type Transaction = {
    id: number;
    uuid: string;
    referenceId: string;
    time: string;
    status: TransactionStatus;
    lang: string;
    psp: string;
    amount: number;
    preAuthorizationId?: number;
    subscription: null | Subscription;
};
export declare class TransactionClient {
    private readonly client;
    constructor(client: PayrexxClient);
    chargePreAuthorizedTransaction(preAuthorizedTransactionId: number, requestData: ChargeTransactionRequestData): Promise<Transaction>;
    retrieveTransaction(transactionId: string): Promise<Transaction>;
}
export {};
