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

    Variable productTableConst

    productTable: Omit<
        PgTableWithColumns<
            {
                columns: {
                    createdAt: PgColumn<
                        {
                            baseColumn: never;
                            columnType: "PgCustomColumn";
                            data: Instant;
                            dataType: "custom";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: true;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: true;
                            tableName: "product";
                        },
                        {},
                        { pgColumnBuilderBrand: "PgCustomColumnBuilderBrand" },
                    >;
                    description: PgColumn<
                        {
                            baseColumn: never;
                            columnType: "PgText";
                            data: string;
                            dataType: "string";
                            driverParam: string;
                            enumValues: [string, ...string[]];
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: "description";
                            notNull: false;
                            tableName: "product";
                        },
                        {},
                        {},
                    >;
                    externalId: PgColumn<
                        {
                            baseColumn: never;
                            columnType: "PgText";
                            data: | "organization.v1"
                            | "identity.v1"
                            | "card.physical_card.v1"
                            | "card.virtual_card.v1"
                            | "deposit.us_cash.v1"
                            | "deposit.rtp.v1"
                            | "deposit.us_bank_ach.v1"
                            | "deposit.ach_credit.v1"
                            | "deposit.us_wire.v1"
                            | "deposit.swift_wire.v1"
                            | "transfer.redemption.v1"
                            | "swap.v1"
                            | "withdraw.blockchain.v1"
                            | "withdraw.ke_bank.v1"
                            | "withdraw.ke_momo.v1"
                            | "withdraw.mx_bank_spei.v1"
                            | "withdraw.swift_wire.v1"
                            | "withdraw.tg_momo.v1"
                            | "withdraw.us_bank_ach.v1"
                            | "withdraw.us_instant.v1"
                            | "withdraw.us_wire.v1"
                            | "withdraw.ach_pull.v1"
                            | "withdraw.us_wire_drawdown.v1"
                            | "account.virtual-account.v1"
                            | "deposit.*"
                            | "withdraw.*";
                            dataType: "string";
                            driverParam: string;
                            enumValues: [string, ...string[]];
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: "externalId";
                            notNull: true;
                            tableName: "product";
                        },
                        {},
                        {
                            $type: | "organization.v1"
                            | "identity.v1"
                            | "card.physical_card.v1"
                            | "card.virtual_card.v1"
                            | "deposit.us_cash.v1"
                            | "deposit.rtp.v1"
                            | "deposit.us_bank_ach.v1"
                            | "deposit.ach_credit.v1"
                            | "deposit.us_wire.v1"
                            | "deposit.swift_wire.v1"
                            | "transfer.redemption.v1"
                            | "swap.v1"
                            | "withdraw.blockchain.v1"
                            | "withdraw.ke_bank.v1"
                            | "withdraw.ke_momo.v1"
                            | "withdraw.mx_bank_spei.v1"
                            | "withdraw.swift_wire.v1"
                            | "withdraw.tg_momo.v1"
                            | "withdraw.us_bank_ach.v1"
                            | "withdraw.us_instant.v1"
                            | "withdraw.us_wire.v1"
                            | "withdraw.ach_pull.v1"
                            | "withdraw.us_wire_drawdown.v1"
                            | "account.virtual-account.v1"
                            | "deposit.*"
                            | "withdraw.*";
                        },
                    >;
                    id: PgColumn<
                        {
                            baseColumn: never;
                            columnType: "PgInteger";
                            data: number;
                            dataType: "number";
                            driverParam: string
                            | number;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: true;
                            hasRuntimeDefault: false;
                            identity: "byDefault";
                            isAutoincrement: false;
                            isPrimaryKey: true;
                            name: "id";
                            notNull: true;
                            tableName: "product";
                        },
                        {},
                        {},
                    >;
                    name: PgColumn<
                        {
                            baseColumn: never;
                            columnType: "PgText";
                            data: string;
                            dataType: "string";
                            driverParam: string;
                            enumValues: [string, ...string[]];
                            generated: undefined;
                            hasDefault: false;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: "name";
                            notNull: true;
                            tableName: "product";
                        },
                        {},
                        {},
                    >;
                    updatedAt: PgColumn<
                        {
                            baseColumn: never;
                            columnType: "PgCustomColumn";
                            data: Instant;
                            dataType: "custom";
                            driverParam: string;
                            enumValues: undefined;
                            generated: undefined;
                            hasDefault: true;
                            hasRuntimeDefault: false;
                            identity: undefined;
                            isAutoincrement: false;
                            isPrimaryKey: false;
                            name: string;
                            notNull: true;
                            tableName: "product";
                        },
                        {},
                        { pgColumnBuilderBrand: "PgCustomColumnBuilderBrand" },
                    >;
                };
                dialect: "pg";
                name: "product";
                schema: "b2b";
            },
        >,
        "enableRLS",
    > = ...

    Reference table for product metadata. externalId is the literal ProductName. Routable surfaces (product_route.productId, product_quote.productId) FK to id; the legacy product_config.productName column still stores the literal string with .$type<ProductName>() as the TS source of truth and has no FK to this table.