/**
 * Litty API
 *        Complete API documentation for the Litty platform.        ## Authentication       Most endpoints require authentication via Supabase JWT tokens.       Include the token in the Authorization header: `Bearer <token>`        ## API Structure       - **Contests**: Create and manage contests, entries, and settlements       - **Markets**: Manage prediction markets within contests       - **Transactions**: Handle financial transactions for contest entries and rewards       - **Wallet**: Manage user wallet balances (cashable, points, tickets)       - **Users**: User management and profiles       - **Leaderboards**: Competition rankings and scoring       - **Uploads**: File upload management       - **Shows**: TV show and episode management (admin only)        ## Response Formats       All endpoints return JSON responses with consistent error handling.       Error responses include `statusCode`, `message`, and `error` fields.
 *
 * The version of the OpenAPI document: 1.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import * as runtime from '../runtime';
import type { CreateTransactionDto, GetUserTransactions200Response, InitiateTransaction201Response, TransactionResponseDto } from '../models/index';
export interface GetTransactionRequest {
    id: string;
}
export interface GetTransactionsByStatusRequest {
    status: GetTransactionsByStatusStatusEnum;
    limit?: number;
    offset?: number;
}
export interface GetUserTransactionsRequest {
    userId: string;
    limit?: number;
    offset?: number;
}
export interface GetWalletTransactionsRequest {
    walletId: string;
    limit?: number;
    offset?: number;
}
export interface InitiateTransactionRequest {
    createTransactionDto: CreateTransactionDto;
}
/**
 *
 */
export declare class TransactionsApi extends runtime.BaseAPI {
    /**
     * Retrieve detailed information about a specific transaction including its status, amounts, and metadata.
     * Get transaction by ID
     */
    getTransactionRaw(requestParameters: GetTransactionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<TransactionResponseDto>>;
    /**
     * Retrieve detailed information about a specific transaction including its status, amounts, and metadata.
     * Get transaction by ID
     */
    getTransaction(requestParameters: GetTransactionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<TransactionResponseDto>;
    /**
     * Retrieve a paginated list of transactions filtered by status, ordered by creation date (newest first).
     * Get transactions by status
     */
    getTransactionsByStatusRaw(requestParameters: GetTransactionsByStatusRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetUserTransactions200Response>>;
    /**
     * Retrieve a paginated list of transactions filtered by status, ordered by creation date (newest first).
     * Get transactions by status
     */
    getTransactionsByStatus(requestParameters: GetTransactionsByStatusRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetUserTransactions200Response>;
    /**
     * Retrieve a paginated list of transactions for a specific user, ordered by creation date (newest first).
     * Get transactions for a user
     */
    getUserTransactionsRaw(requestParameters: GetUserTransactionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetUserTransactions200Response>>;
    /**
     * Retrieve a paginated list of transactions for a specific user, ordered by creation date (newest first).
     * Get transactions for a user
     */
    getUserTransactions(requestParameters: GetUserTransactionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetUserTransactions200Response>;
    /**
     * Retrieve a paginated list of transactions for a specific wallet, ordered by creation date (newest first).
     * Get transactions for a wallet
     */
    getWalletTransactionsRaw(requestParameters: GetWalletTransactionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetUserTransactions200Response>>;
    /**
     * Retrieve a paginated list of transactions for a specific wallet, ordered by creation date (newest first).
     * Get transactions for a wallet
     */
    getWalletTransactions(requestParameters: GetWalletTransactionsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetUserTransactions200Response>;
    /**
     * Create a new transaction that will be validated and processed. This triggers the transaction workflow which may update wallet balances if approved.
     * Initiate a new transaction
     */
    initiateTransactionRaw(requestParameters: InitiateTransactionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<InitiateTransaction201Response>>;
    /**
     * Create a new transaction that will be validated and processed. This triggers the transaction workflow which may update wallet balances if approved.
     * Initiate a new transaction
     */
    initiateTransaction(requestParameters: InitiateTransactionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<InitiateTransaction201Response>;
}
/**
 * @export
 */
export declare const GetTransactionsByStatusStatusEnum: {
    readonly Pending: "pending";
    readonly Completed: "completed";
    readonly Failed: "failed";
};
export type GetTransactionsByStatusStatusEnum = typeof GetTransactionsByStatusStatusEnum[keyof typeof GetTransactionsByStatusStatusEnum];
