@cfxlabsinc/b2b-services
    Preparing search index...

    Variable walletTransactionTableConst

    walletTransactionTable: Omit<
        PgTableWithColumns<
            {
                columns: {
                    awsRequestId: PgBuildColumn<
                        "wallet_transaction",
                        PgTextBuilder<[string, ...string[]]>,
                        {
                            data: string;
                            dataType: "string";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    blockTime: PgBuildColumn<
                        "wallet_transaction",
                        PgTimestampBuilder,
                        {
                            data: Date;
                            dataType: "object date";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    cancelledAt: PgBuildColumn<
                        "wallet_transaction",
                        PgTimestampBuilder,
                        {
                            data: Date;
                            dataType: "object date";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    chain: PgBuildColumn<
                        "wallet_transaction",
                        Set$Type<
                            SetNotNull<PgTextBuilder<[string, ...string[]]>>,
                            WalletTransactionChain,
                        >,
                        {
                            data: WalletTransactionChain;
                            dataType: "string";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: true;
                            tableName: "wallet_transaction";
                        },
                    >;
                    chainData: PgBuildColumn<
                        "wallet_transaction",
                        Set$Type<
                            PgJsonbBuilder,
                            | JsonObject
                            | {
                                blockTime: number;
                                indexWithinBlock: number;
                                meta: {
                                    err: JsonValue;
                                    fee: number;
                                    innerInstructions: { index: ...; instructions: ... }[];
                                    loadedAddresses: { readonly: (...)[]; writable: (...)[] };
                                    logMessages: string[];
                                    postBalances: number[];
                                    postTokenBalances: TokenBalance[];
                                    preBalances: number[];
                                    preTokenBalances: TokenBalance[];
                                };
                                slot: number;
                                transaction: {
                                    message: {
                                        accountKeys: (...)[];
                                        addressTableLookups?: (...) | (...) | (...);
                                        header: {
                                            numReadonlySignedAccounts: ...;
                                            numReadonlyUnsignedAccounts: ...;
                                            numRequiredSignatures: ...;
                                        };
                                        instructions: (...)[];
                                        recentBlockhash: string;
                                        transactionConfig?: (...) | (...);
                                    };
                                    signatures: string[];
                                };
                                version?: 0
                                | 1
                                | "legacy";
                            },
                        >,
                        {
                            data: | JsonObject
                            | {
                                blockTime: number;
                                indexWithinBlock: number;
                                meta: {
                                    err: JsonValue;
                                    fee: number;
                                    innerInstructions: { index: ...; instructions: ... }[];
                                    loadedAddresses: { readonly: (...)[]; writable: (...)[] };
                                    logMessages: string[];
                                    postBalances: number[];
                                    postTokenBalances: TokenBalance[];
                                    preBalances: number[];
                                    preTokenBalances: TokenBalance[];
                                };
                                slot: number;
                                transaction: {
                                    message: {
                                        accountKeys: (...)[];
                                        addressTableLookups?: (...) | (...) | (...);
                                        header: {
                                            numReadonlySignedAccounts: ...;
                                            numReadonlyUnsignedAccounts: ...;
                                            numRequiredSignatures: ...;
                                        };
                                        instructions: (...)[];
                                        recentBlockhash: string;
                                        transactionConfig?: (...) | (...);
                                    };
                                    signatures: string[];
                                };
                                version?: 0
                                | 1
                                | "legacy";
                            };
                            dataType: "object json";
                            driverParam: unknown;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    chainId: PgBuildColumn<
                        "wallet_transaction",
                        SetNotNull<PgIntegerBuilder>,
                        {
                            data: number;
                            dataType: "number int32";
                            driverParam: string | number;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: true;
                            tableName: "wallet_transaction";
                        },
                    >;
                    confirmedAt: PgBuildColumn<
                        "wallet_transaction",
                        PgTimestampBuilder,
                        {
                            data: Date;
                            dataType: "object date";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    createdAt: PgBuildColumn<
                        "wallet_transaction",
                        SetHasDefault<SetNotNull<PgTimestampBuilder>>,
                        {
                            data: Date;
                            dataType: "object date";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: true;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: true;
                            tableName: "wallet_transaction";
                        },
                    >;
                    data: PgBuildColumn<
                        "wallet_transaction",
                        Set$Type<PgJsonbBuilder, JsonObject>,
                        {
                            data: TData;
                            dataType: "object json";
                            driverParam: unknown;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    error: PgBuildColumn<
                        "wallet_transaction",
                        Set$Type<PgJsonbBuilder, JsonValue>,
                        {
                            data: JsonValue;
                            dataType: "object json";
                            driverParam: unknown;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    evmFrom: PgBuildColumn<
                        "wallet_transaction",
                        PgTextBuilder<[string, ...string[]]>,
                        {
                            data: string;
                            dataType: "string";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    evmNonce: PgBuildColumn<
                        "wallet_transaction",
                        PgBigInt64Builder,
                        {
                            data: bigint;
                            dataType: "bigint int64";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    externalId: PgBuildColumn<
                        "wallet_transaction",
                        SetHasRuntimeDefault<SetNotNull<PgTextBuilder<[string, ...string[]]>>>,
                        {
                            data: string;
                            dataType: "string";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: true;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: true;
                            tableName: "wallet_transaction";
                        },
                    >;
                    finalizedAt: PgBuildColumn<
                        "wallet_transaction",
                        PgTimestampBuilder,
                        {
                            data: Date;
                            dataType: "object date";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    id: PgBuildColumn<
                        "wallet_transaction",
                        HasIdentity<SetIsPrimaryKey<PgIntegerBuilder>, "byDefault">,
                        {
                            data: number;
                            dataType: "number int32";
                            driverParam: string | number;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: true;
                            hasRuntimeDefault: false;
                            identity: "byDefault";
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: true;
                            tableName: "wallet_transaction";
                        },
                    >;
                    indexWithinBlock: PgBuildColumn<
                        "wallet_transaction",
                        PgIntegerBuilder,
                        {
                            data: number;
                            dataType: "number int32";
                            driverParam: string
                            | number;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    lastValidBlockHeight: PgBuildColumn<
                        "wallet_transaction",
                        PgBigInt64Builder,
                        {
                            data: bigint;
                            dataType: "bigint int64";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    memoIks: PgBuildColumn<
                        "wallet_transaction",
                        SetDimensions<PgUUIDBuilder, 1>,
                        {
                            data: string[];
                            dataType: "string uuid";
                            driverParam: string | string[];
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    messageHash: PgBuildColumn<
                        "wallet_transaction",
                        PgByteaBuilder,
                        {
                            data: Buffer;
                            dataType: "object buffer";
                            driverParam: Buffer<ArrayBufferLike>;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    nonce: PgBuildColumn<
                        "wallet_transaction",
                        PgTextBuilder<[string, ...string[]]>,
                        {
                            data: string;
                            dataType: "string";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    nonceReleasedAt: PgBuildColumn<
                        "wallet_transaction",
                        PgTimestampBuilder,
                        {
                            data: Date;
                            dataType: "object date";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    parsedEvents: PgBuildColumn<
                        "wallet_transaction",
                        Set$Type<PgJsonbBuilder, ParsedSolanaTransactionEvent[]>,
                        {
                            data: ParsedSolanaTransactionEvent[];
                            dataType: "object json";
                            driverParam: unknown;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    payload: PgBuildColumn<
                        "wallet_transaction",
                        PgByteaBuilder,
                        {
                            data: Buffer;
                            dataType: "object buffer";
                            driverParam: Buffer<ArrayBufferLike>;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    reference: PgBuildColumn<
                        "wallet_transaction",
                        PgTextBuilder<[string, ...string[]]>,
                        {
                            data: string;
                            dataType: "string";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    requestedBy: PgBuildColumn<
                        "wallet_transaction",
                        PgTextBuilder<[string, ...string[]]>,
                        {
                            data: string;
                            dataType: "string";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    signedAt: PgBuildColumn<
                        "wallet_transaction",
                        PgTimestampBuilder,
                        {
                            data: Date;
                            dataType: "object date";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    slot: PgBuildColumn<
                        "wallet_transaction",
                        PgBigInt53Builder,
                        {
                            data: number;
                            dataType: "number int53";
                            driverParam: string
                            | number;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    solanaNonceAddress: PgBuildColumn<
                        "wallet_transaction",
                        PgTextBuilder<[string, ...string[]]>,
                        {
                            data: string;
                            dataType: "string";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    solanaNonceId: PgBuildColumn<
                        "wallet_transaction",
                        PgIntegerBuilder,
                        {
                            data: number;
                            dataType: "number int32";
                            driverParam: string
                            | number;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    source: PgBuildColumn<
                        "wallet_transaction",
                        SetHasDefault<
                            Set$Type<
                                SetNotNull<PgTextBuilder<[string, ...string[]]>>,
                                WalletTransactionSource,
                            >,
                        >,
                        {
                            data: WalletTransactionSource;
                            dataType: "string";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: true;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: true;
                            tableName: "wallet_transaction";
                        },
                    >;
                    status: PgBuildColumn<
                        "wallet_transaction",
                        SetHasDefault<
                            Set$Type<
                                SetNotNull<PgTextBuilder<[string, ...string[]]>>,
                                WalletTransactionStatus,
                            >,
                        >,
                        {
                            data: WalletTransactionStatus;
                            dataType: "string";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: true;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: true;
                            tableName: "wallet_transaction";
                        },
                    >;
                    submittedAt: PgBuildColumn<
                        "wallet_transaction",
                        PgTimestampBuilder,
                        {
                            data: Date;
                            dataType: "object date";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    txHash: PgBuildColumn<
                        "wallet_transaction",
                        PgTextBuilder<[string, ...string[]]>,
                        {
                            data: string;
                            dataType: "string";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    type: PgBuildColumn<
                        "wallet_transaction",
                        Set$Type<
                            SetNotNull<PgTextBuilder<[string, ...string[]]>>,
                            WalletTransactionType,
                        >,
                        {
                            data: WalletTransactionType;
                            dataType: "string";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: true;
                            tableName: "wallet_transaction";
                        },
                    >;
                    updatedAt: PgBuildColumn<
                        "wallet_transaction",
                        SetHasDefault<SetHasDefault<SetNotNull<PgTimestampBuilder>>>,
                        {
                            data: Date;
                            dataType: "object date";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: true;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: true;
                            tableName: "wallet_transaction";
                        },
                    >;
                    utilaTransactionId: PgBuildColumn<
                        "wallet_transaction",
                        PgTextBuilder<[string, ...string[]]>,
                        {
                            data: string;
                            dataType: "string";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    utilaVaultExternalId: PgBuildColumn<
                        "wallet_transaction",
                        PgTextBuilder<[string, ...string[]]>,
                        {
                            data: string;
                            dataType: "string";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                    utilaVaultId: PgBuildColumn<
                        "wallet_transaction",
                        PgIntegerBuilder,
                        {
                            data: number;
                            dataType: "number int32";
                            driverParam: string
                            | number;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: false;
                            tableName: "wallet_transaction";
                        },
                    >;
                };
                dialect: "pg";
                isAlias: false;
                name: "wallet_transaction";
                schema: "b2b";
            },
        >,
        "enableRLS",
    > = ...

    One row per on-chain transaction touching a CFX wallet, whoever signed it, and every message a CFX key signs (WALLETS.md §5.3). wallet-api writes a CFX row before broadcast, signed last and never half-signed, idempotent on (reference, messageHash); every signature is a wallet_signature row. account-sync fills the chain columns on what it observes and inserts EXTERNAL rows, matching on (chainId, txHash). The signing columns are all set or all null, and null on every EXTERNAL row.

    dbmate owns the DDL: 20261018164931_wallet_transaction.sql, then 20261019165453_wallet_transaction_chain_rows.sql and 20261023193347_wallet_transaction_network.sql, whose trigger fills chainId on a SOLANA row inserted without one (wallet-api's signer), and 20261102153615_wallet_transaction_awaiting_signature.sql (Utila signing), and 20261107225014_wallet_transaction_evm_nonce.sql (EVM gas station nonces).