diff --git a/backend/api/src/routes/token.ts b/backend/api/src/routes/token.ts index bf74e0b7..84a00562 100644 --- a/backend/api/src/routes/token.ts +++ b/backend/api/src/routes/token.ts @@ -1,6 +1,9 @@ import { + MintTokenSchema, Network, TokenCreateSchema, + TopicTypes, + TxnTopic, dbResStatus, responseStatus, } from "@paybox/common"; @@ -10,6 +13,7 @@ import { checkPassword, getNetworkPrivateKey } from "@paybox/backend-common"; import { insertToken } from "../db/token"; import { insertAta } from "../db/ata"; import { decryptWithPassword } from "../auth"; +import { Worker } from "../workers/txn"; export const tokenRouter = Router(); @@ -108,3 +112,103 @@ tokenRouter.post("/create", checkPassword, async (req, res) => { }); } }); + +tokenRouter.post("/mint", checkPassword, async (req, res) => { + try { + //@ts-ignore + const id = req.id; + //@ts-ignore + const hashPassword = req.hashPassword; + + if (id && hashPassword) { + const { mint, authority, network, tokens, ata, username } = + MintTokenSchema.parse(req.body); + + let { status, privateKey } = await getNetworkPrivateKey( + authority, + network, + ); + if (status == dbResStatus.Error || !privateKey) { + return res.status(404).json({ + msg: "That account is not Found in Database...", + status: responseStatus.Error, + }); + } + privateKey = await decryptWithPassword(privateKey, hashPassword); + + let instance; + switch (network) { + case Network.Sol: + instance = await SolTokenOps.getInstance().mintToken( + privateKey, + mint, + ata, + tokens, + ); + break; + + case Network.Eth: + break; + + default: + return res.status(404).json({ + msg: `${network} is not yet Supported...`, + status: responseStatus.Error, + }); + } + + if (!instance) { + return res.status(404).json({ + msg: "Sorry, We don't yet Support tokens on that chain", + status: responseStatus.Error, + }); + } + + console.log(instance); + + try { + //publishing to push the txn + await Worker.getInstance().publishOne({ + topic: TopicTypes.Txn, + message: [ + { + partition: 0, + key: instance, + value: JSON.stringify({ + type: TxnTopic.Finalized, + chain: network, + from: id, + to: username, + hash: instance, + isTokenTxn: true, + isMint: true, + }), + }, + ], + }); + } catch (e) { + console.log(e); + return res.status(500).json({ + msg: "Error publishing the txn", + status: responseStatus.Error, + }); + } + + return res.status(200).json({ + msg: `${tokens} minted successfully...`, + status: responseStatus.Ok, + }); + } + + return res.status(401).json({ + msg: "Auth Error", + status: responseStatus.Error, + }); + } catch (e) { + console.log(e); + return res.status(500).json({ + msg: "Internal Server Error", + status: responseStatus.Error, + }); + } +}); diff --git a/backend/hasura/hasura/metadata/databases/default/tables/public_ata.yaml b/backend/hasura/hasura/metadata/databases/default/tables/public_ata.yaml index f795c616..ae89fe09 100644 --- a/backend/hasura/hasura/metadata/databases/default/tables/public_ata.yaml +++ b/backend/hasura/hasura/metadata/databases/default/tables/public_ata.yaml @@ -21,3 +21,18 @@ object_relationships: - name: tokenByToken using: foreign_key_constraint_on: token +array_relationships: + - name: tokenTxnsByToata + using: + foreign_key_constraint_on: + column: toAta + table: + name: token_txn + schema: public + - name: token_txns + using: + foreign_key_constraint_on: + column: fromAta + table: + name: token_txn + schema: public diff --git a/backend/hasura/hasura/metadata/databases/default/tables/public_client.yaml b/backend/hasura/hasura/metadata/databases/default/tables/public_client.yaml index 996ca78a..c6116d6b 100644 --- a/backend/hasura/hasura/metadata/databases/default/tables/public_client.yaml +++ b/backend/hasura/hasura/metadata/databases/default/tables/public_client.yaml @@ -97,6 +97,13 @@ array_relationships: table: name: notification schema: public + - name: token_txns + using: + foreign_key_constraint_on: + column: clientId + table: + name: token_txn + schema: public - name: tokens using: foreign_key_constraint_on: diff --git a/backend/hasura/hasura/metadata/databases/default/tables/public_token.yaml b/backend/hasura/hasura/metadata/databases/default/tables/public_token.yaml index aafd6957..315f6224 100644 --- a/backend/hasura/hasura/metadata/databases/default/tables/public_token.yaml +++ b/backend/hasura/hasura/metadata/databases/default/tables/public_token.yaml @@ -23,3 +23,10 @@ array_relationships: table: name: ata schema: public + - name: token_txns + using: + foreign_key_constraint_on: + column: token + table: + name: token_txn + schema: public diff --git a/backend/hasura/hasura/metadata/databases/default/tables/public_token_txn.yaml b/backend/hasura/hasura/metadata/databases/default/tables/public_token_txn.yaml new file mode 100644 index 00000000..fde75671 --- /dev/null +++ b/backend/hasura/hasura/metadata/databases/default/tables/public_token_txn.yaml @@ -0,0 +1,16 @@ +table: + name: token_txn + schema: public +object_relationships: + - name: token_txn_to_client + using: + foreign_key_constraint_on: clientId + - name: token_txn_to_token + using: + foreign_key_constraint_on: token + - name: txn_fromAta_to_ata + using: + foreign_key_constraint_on: fromAta + - name: txn_toAta_to_ata + using: + foreign_key_constraint_on: toAta diff --git a/backend/hasura/hasura/metadata/databases/default/tables/tables.yaml b/backend/hasura/hasura/metadata/databases/default/tables/tables.yaml index 6f0d4549..96539d55 100644 --- a/backend/hasura/hasura/metadata/databases/default/tables/tables.yaml +++ b/backend/hasura/hasura/metadata/databases/default/tables/tables.yaml @@ -17,5 +17,6 @@ - "!include public_notification_subscription.yaml" - "!include public_sol.yaml" - "!include public_token.yaml" +- "!include public_token_txn.yaml" - "!include public_transactions.yaml" - "!include public_wallet.yaml" diff --git a/backend/hasura/hasura/migrations/default/1715417904215_create_table_public_token_txn/down.sql b/backend/hasura/hasura/migrations/default/1715417904215_create_table_public_token_txn/down.sql new file mode 100644 index 00000000..e0537b97 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715417904215_create_table_public_token_txn/down.sql @@ -0,0 +1 @@ +DROP TABLE "public"."token_txn"; diff --git a/backend/hasura/hasura/migrations/default/1715417904215_create_table_public_token_txn/up.sql b/backend/hasura/hasura/migrations/default/1715417904215_create_table_public_token_txn/up.sql new file mode 100644 index 00000000..293b723d --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715417904215_create_table_public_token_txn/up.sql @@ -0,0 +1,18 @@ +CREATE TABLE "public"."token_txn" ("id" uuid NOT NULL DEFAULT gen_random_uuid(), "blockHash" text NOT NULL, "fee" float8 NOT NULL, "hash" text NOT NULL, "amount" float8 NOT NULL, "fromAta" text NOT NULL, "toAta" text NOT NULL, "isMint" boolean NOT NULL DEFAULT false, "token" text NOT NULL, "network" text NOT NULL, "slot" int8 NOT NULL, "status" text NOT NULL DEFAULT 'pending', "time" time NOT NULL, "created_at" timestamptz NOT NULL DEFAULT now(), "updated_at" timestamptz NOT NULL DEFAULT now(), "clientId" uuid NOT NULL, PRIMARY KEY ("id") , FOREIGN KEY ("clientId") REFERENCES "public"."client"("id") ON UPDATE no action ON DELETE no action, FOREIGN KEY ("token") REFERENCES "public"."token"("pubKey") ON UPDATE no action ON DELETE no action, FOREIGN KEY ("fromAta") REFERENCES "public"."ata"("pubKey") ON UPDATE no action ON DELETE no action, FOREIGN KEY ("toAta") REFERENCES "public"."ata"("pubKey") ON UPDATE no action ON DELETE no action, UNIQUE ("id"));COMMENT ON TABLE "public"."token_txn" IS E'all the token transactions'; +CREATE OR REPLACE FUNCTION "public"."set_current_timestamp_updated_at"() +RETURNS TRIGGER AS $$ +DECLARE + _new record; +BEGIN + _new := NEW; + _new."updated_at" = NOW(); + RETURN _new; +END; +$$ LANGUAGE plpgsql; +CREATE TRIGGER "set_public_token_txn_updated_at" +BEFORE UPDATE ON "public"."token_txn" +FOR EACH ROW +EXECUTE PROCEDURE "public"."set_current_timestamp_updated_at"(); +COMMENT ON TRIGGER "set_public_token_txn_updated_at" ON "public"."token_txn" +IS 'trigger to set value of column "updated_at" to current timestamp on row update'; +CREATE EXTENSION IF NOT EXISTS pgcrypto; diff --git a/backend/hasura/hasura/migrations/default/1715420911708_alter_table_public_token_txn_alter_column_time/down.sql b/backend/hasura/hasura/migrations/default/1715420911708_alter_table_public_token_txn_alter_column_time/down.sql new file mode 100644 index 00000000..7b1a1527 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715420911708_alter_table_public_token_txn_alter_column_time/down.sql @@ -0,0 +1 @@ +ALTER TABLE "public"."token_txn" ALTER COLUMN "time" TYPE time without time zone; diff --git a/backend/hasura/hasura/migrations/default/1715420911708_alter_table_public_token_txn_alter_column_time/up.sql b/backend/hasura/hasura/migrations/default/1715420911708_alter_table_public_token_txn_alter_column_time/up.sql new file mode 100644 index 00000000..5af7f575 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715420911708_alter_table_public_token_txn_alter_column_time/up.sql @@ -0,0 +1 @@ +ALTER TABLE "public"."token_txn" ALTER COLUMN "time" TYPE timetz; diff --git a/backend/hasura/hasura/migrations/default/1715420992766_alter_table_public_token_txn_drop_column_time/down.sql b/backend/hasura/hasura/migrations/default/1715420992766_alter_table_public_token_txn_drop_column_time/down.sql new file mode 100644 index 00000000..4d5da36d --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715420992766_alter_table_public_token_txn_drop_column_time/down.sql @@ -0,0 +1,3 @@ +comment on column "public"."token_txn"."time" is E'all the token transactions'; +alter table "public"."token_txn" alter column "time" drop not null; +alter table "public"."token_txn" add column "time" timetz; diff --git a/backend/hasura/hasura/migrations/default/1715420992766_alter_table_public_token_txn_drop_column_time/up.sql b/backend/hasura/hasura/migrations/default/1715420992766_alter_table_public_token_txn_drop_column_time/up.sql new file mode 100644 index 00000000..a87be378 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715420992766_alter_table_public_token_txn_drop_column_time/up.sql @@ -0,0 +1 @@ +alter table "public"."token_txn" drop column "time" cascade; diff --git a/backend/hasura/hasura/migrations/default/1715421005669_alter_table_public_token_txn_add_column_time/down.sql b/backend/hasura/hasura/migrations/default/1715421005669_alter_table_public_token_txn_add_column_time/down.sql new file mode 100644 index 00000000..3ca75305 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421005669_alter_table_public_token_txn_add_column_time/down.sql @@ -0,0 +1,4 @@ +-- Could not auto-generate a down migration. +-- Please write an appropriate down migration for the SQL below: +-- alter table "public"."token_txn" add column "time" timestamptz +-- not null; diff --git a/backend/hasura/hasura/migrations/default/1715421005669_alter_table_public_token_txn_add_column_time/up.sql b/backend/hasura/hasura/migrations/default/1715421005669_alter_table_public_token_txn_add_column_time/up.sql new file mode 100644 index 00000000..4762d1e6 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421005669_alter_table_public_token_txn_add_column_time/up.sql @@ -0,0 +1,2 @@ +alter table "public"."token_txn" add column "time" timestamptz + not null; diff --git a/backend/hasura/hasura/migrations/default/1715421272013_alter_table_public_token_txn_alter_column_fromAta/down.sql b/backend/hasura/hasura/migrations/default/1715421272013_alter_table_public_token_txn_alter_column_fromAta/down.sql new file mode 100644 index 00000000..39fb1246 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421272013_alter_table_public_token_txn_alter_column_fromAta/down.sql @@ -0,0 +1 @@ +alter table "public"."token_txn" rename column "fromAtaOwner" to "fromAta"; diff --git a/backend/hasura/hasura/migrations/default/1715421272013_alter_table_public_token_txn_alter_column_fromAta/up.sql b/backend/hasura/hasura/migrations/default/1715421272013_alter_table_public_token_txn_alter_column_fromAta/up.sql new file mode 100644 index 00000000..392435db --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421272013_alter_table_public_token_txn_alter_column_fromAta/up.sql @@ -0,0 +1 @@ +alter table "public"."token_txn" rename column "fromAta" to "fromAtaOwner"; diff --git a/backend/hasura/hasura/migrations/default/1715421280245_alter_table_public_token_txn_alter_column_toAta/down.sql b/backend/hasura/hasura/migrations/default/1715421280245_alter_table_public_token_txn_alter_column_toAta/down.sql new file mode 100644 index 00000000..244fb5f2 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421280245_alter_table_public_token_txn_alter_column_toAta/down.sql @@ -0,0 +1 @@ +alter table "public"."token_txn" rename column "toAtaOwner" to "toAta"; diff --git a/backend/hasura/hasura/migrations/default/1715421280245_alter_table_public_token_txn_alter_column_toAta/up.sql b/backend/hasura/hasura/migrations/default/1715421280245_alter_table_public_token_txn_alter_column_toAta/up.sql new file mode 100644 index 00000000..cb4109b4 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421280245_alter_table_public_token_txn_alter_column_toAta/up.sql @@ -0,0 +1 @@ +alter table "public"."token_txn" rename column "toAta" to "toAtaOwner"; diff --git a/backend/hasura/hasura/migrations/default/1715421364959_delete_fk_public_token_txn_token_txn_fromAta_fkey/down.sql b/backend/hasura/hasura/migrations/default/1715421364959_delete_fk_public_token_txn_token_txn_fromAta_fkey/down.sql new file mode 100644 index 00000000..223ad1b5 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421364959_delete_fk_public_token_txn_token_txn_fromAta_fkey/down.sql @@ -0,0 +1,5 @@ +alter table "public"."token_txn" + add constraint "token_txn_fromAta_fkey" + foreign key ("fromAtaOwner") + references "public"."ata" + ("pubKey") on update no action on delete no action; diff --git a/backend/hasura/hasura/migrations/default/1715421364959_delete_fk_public_token_txn_token_txn_fromAta_fkey/up.sql b/backend/hasura/hasura/migrations/default/1715421364959_delete_fk_public_token_txn_token_txn_fromAta_fkey/up.sql new file mode 100644 index 00000000..f33190ea --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421364959_delete_fk_public_token_txn_token_txn_fromAta_fkey/up.sql @@ -0,0 +1 @@ +alter table "public"."token_txn" drop constraint "token_txn_fromAta_fkey"; diff --git a/backend/hasura/hasura/migrations/default/1715421372066_delete_fk_public_token_txn_token_txn_toAta_fkey/down.sql b/backend/hasura/hasura/migrations/default/1715421372066_delete_fk_public_token_txn_token_txn_toAta_fkey/down.sql new file mode 100644 index 00000000..d5288bbf --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421372066_delete_fk_public_token_txn_token_txn_toAta_fkey/down.sql @@ -0,0 +1,5 @@ +alter table "public"."token_txn" + add constraint "token_txn_toAta_fkey" + foreign key ("toAtaOwner") + references "public"."ata" + ("pubKey") on update no action on delete no action; diff --git a/backend/hasura/hasura/migrations/default/1715421372066_delete_fk_public_token_txn_token_txn_toAta_fkey/up.sql b/backend/hasura/hasura/migrations/default/1715421372066_delete_fk_public_token_txn_token_txn_toAta_fkey/up.sql new file mode 100644 index 00000000..219acc56 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421372066_delete_fk_public_token_txn_token_txn_toAta_fkey/up.sql @@ -0,0 +1 @@ +alter table "public"."token_txn" drop constraint "token_txn_toAta_fkey"; diff --git a/backend/hasura/hasura/migrations/default/1715421504584_alter_table_public_token_txn_alter_column_fromAtaOwner/down.sql b/backend/hasura/hasura/migrations/default/1715421504584_alter_table_public_token_txn_alter_column_fromAtaOwner/down.sql new file mode 100644 index 00000000..392435db --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421504584_alter_table_public_token_txn_alter_column_fromAtaOwner/down.sql @@ -0,0 +1 @@ +alter table "public"."token_txn" rename column "fromAta" to "fromAtaOwner"; diff --git a/backend/hasura/hasura/migrations/default/1715421504584_alter_table_public_token_txn_alter_column_fromAtaOwner/up.sql b/backend/hasura/hasura/migrations/default/1715421504584_alter_table_public_token_txn_alter_column_fromAtaOwner/up.sql new file mode 100644 index 00000000..39fb1246 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421504584_alter_table_public_token_txn_alter_column_fromAtaOwner/up.sql @@ -0,0 +1 @@ +alter table "public"."token_txn" rename column "fromAtaOwner" to "fromAta"; diff --git a/backend/hasura/hasura/migrations/default/1715421512395_alter_table_public_token_txn_alter_column_toAtaOwner/down.sql b/backend/hasura/hasura/migrations/default/1715421512395_alter_table_public_token_txn_alter_column_toAtaOwner/down.sql new file mode 100644 index 00000000..cb4109b4 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421512395_alter_table_public_token_txn_alter_column_toAtaOwner/down.sql @@ -0,0 +1 @@ +alter table "public"."token_txn" rename column "toAta" to "toAtaOwner"; diff --git a/backend/hasura/hasura/migrations/default/1715421512395_alter_table_public_token_txn_alter_column_toAtaOwner/up.sql b/backend/hasura/hasura/migrations/default/1715421512395_alter_table_public_token_txn_alter_column_toAtaOwner/up.sql new file mode 100644 index 00000000..244fb5f2 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421512395_alter_table_public_token_txn_alter_column_toAtaOwner/up.sql @@ -0,0 +1 @@ +alter table "public"."token_txn" rename column "toAtaOwner" to "toAta"; diff --git a/backend/hasura/hasura/migrations/default/1715421530803_set_fk_public_token_txn_fromAta/down.sql b/backend/hasura/hasura/migrations/default/1715421530803_set_fk_public_token_txn_fromAta/down.sql new file mode 100644 index 00000000..f33190ea --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421530803_set_fk_public_token_txn_fromAta/down.sql @@ -0,0 +1 @@ +alter table "public"."token_txn" drop constraint "token_txn_fromAta_fkey"; diff --git a/backend/hasura/hasura/migrations/default/1715421530803_set_fk_public_token_txn_fromAta/up.sql b/backend/hasura/hasura/migrations/default/1715421530803_set_fk_public_token_txn_fromAta/up.sql new file mode 100644 index 00000000..369337b7 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421530803_set_fk_public_token_txn_fromAta/up.sql @@ -0,0 +1,5 @@ +alter table "public"."token_txn" + add constraint "token_txn_fromAta_fkey" + foreign key ("fromAta") + references "public"."ata" + ("pubKey") on update no action on delete no action; diff --git a/backend/hasura/hasura/migrations/default/1715421545537_set_fk_public_token_txn_toAta/down.sql b/backend/hasura/hasura/migrations/default/1715421545537_set_fk_public_token_txn_toAta/down.sql new file mode 100644 index 00000000..219acc56 --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421545537_set_fk_public_token_txn_toAta/down.sql @@ -0,0 +1 @@ +alter table "public"."token_txn" drop constraint "token_txn_toAta_fkey"; diff --git a/backend/hasura/hasura/migrations/default/1715421545537_set_fk_public_token_txn_toAta/up.sql b/backend/hasura/hasura/migrations/default/1715421545537_set_fk_public_token_txn_toAta/up.sql new file mode 100644 index 00000000..339d0b2a --- /dev/null +++ b/backend/hasura/hasura/migrations/default/1715421545537_set_fk_public_token_txn_toAta/up.sql @@ -0,0 +1,5 @@ +alter table "public"."token_txn" + add constraint "token_txn_toAta_fkey" + foreign key ("toAta") + references "public"."ata" + ("pubKey") on update no action on delete no action; diff --git a/backend/notif-worker/src/db/txn.ts b/backend/notif-worker/src/db/txn.ts index c464459e..231e70fe 100644 --- a/backend/notif-worker/src/db/txn.ts +++ b/backend/notif-worker/src/db/txn.ts @@ -4,6 +4,7 @@ import { HASURA_ADMIN_SERCRET, Network, NotifSubType, + TokenTxn, TxnType, dbResStatus, } from "@paybox/common"; @@ -114,6 +115,7 @@ export const insertCentTxn = async ( export const insertTxn = async ( txn: Omit, clientId: string, + network: Network, ): Promise<{ status: dbResStatus; id?: string; @@ -125,6 +127,8 @@ export const insertTxn = async ( object: { ...txn, clientId, + time: new Date().toISOString(), + network, }, }, { @@ -145,3 +149,107 @@ export const insertTxn = async ( status: dbResStatus.Error, }; }; + +export const insertTokenTxn = async ( + txn: TokenTxn, +): Promise<{ + status: dbResStatus; + id?: string; +}> => { + const fromAta = await chain("query")( + { + ata: [ + { + where: { + token: { _eq: txn.token }, + owner: { _eq: txn.fromAta }, + }, + }, + { + pubKey: true, + }, + ], + }, + { operationName: "fromata" }, + ); + const toAta = await chain("query")( + { + ata: [ + { + where: { + token: { _eq: txn.token }, + owner: { _eq: txn.toAta }, + }, + }, + { + pubKey: true, + }, + ], + }, + { operationName: "toAta" }, + ); + + txn.fromAta = fromAta.ata[0].pubKey; + txn.toAta = fromAta.ata[0].pubKey; + + const response = await chain("mutation")( + { + insert_token_txn_one: [ + { + object: { + ...txn, + }, + }, + { + id: true, + }, + ], + }, + { operationName: "insert_token_txn_one" }, + ); + if (response.insert_token_txn_one?.id) { + return { + status: dbResStatus.Ok, + id: response.insert_token_txn_one.id as string, + }; + } + return { + status: dbResStatus.Error, + }; +}; + +export const getTokenTxnDetails = async ( + txnId: string, + to: string, +): Promise<{ + status: dbResStatus; + amount?: number; +}> => { + const response = await chain("query")( + { + token_txn: [ + { + where: { + client: { + username: { _eq: to }, + }, + id: { _eq: txnId }, + }, + }, + { + amount: true, + }, + ], + }, + { operationName: "getTokenDetails" }, + ); + if (response.token_txn[0]) { + return { + status: dbResStatus.Ok, + amount: response.token_txn[0].amount as number, + }; + } + return { + status: dbResStatus.Error, + }; +}; diff --git a/backend/notif-worker/src/index.ts b/backend/notif-worker/src/index.ts index 42f540d1..9a69556a 100644 --- a/backend/notif-worker/src/index.ts +++ b/backend/notif-worker/src/index.ts @@ -87,6 +87,9 @@ if (cluster.isPrimary) { new Promise((resolve) => { RedisBase.getInstance().getclient.on("ready", resolve); }), + new Promise((resolve) => { + ProducerWorker.getInstance().connectProducer(); + }), ]) .then(() => { app.listen(PORT, async () => { @@ -99,6 +102,7 @@ if (cluster.isPrimary) { } else { (async () => { try { + await ProducerWorker.getInstance().connectProducer(); await ConsumerWorker.getInstance().connectCounsumer( "worker-group", [TopicTypes.Notif, TopicTypes.Msg, TopicTypes.Db, TopicTypes.Txn], diff --git a/backend/notif-worker/src/kafka/consumer.ts b/backend/notif-worker/src/kafka/consumer.ts index 29f3b3eb..2416fea8 100644 --- a/backend/notif-worker/src/kafka/consumer.ts +++ b/backend/notif-worker/src/kafka/consumer.ts @@ -3,11 +3,13 @@ import { kafka } from ".."; import { DBTopics, MsgTopics, + Network, NotifTopics, TopicTypes, TxnTopic, } from "@paybox/common"; import { + finalizeTokenTxn, finalizedTxn, notifyFriendRequest, notifyFriendRequestAccepted, @@ -154,12 +156,22 @@ export class ConsumerWorker { case TopicTypes.Txn: switch (payload.type) { case TxnTopic.Finalized: - await finalizedTxn({ - chain: payload.chain, - from: payload.from, - hash: payload.hash, - to: payload.to, - }); + if (payload.isTokenTxn) { + await finalizeTokenTxn({ + chain: payload.chain as Network, + from: payload.from, + hash: payload.hash, + to: payload.to, + isMint: payload.isMint, + }); + } else { + await finalizedTxn({ + chain: payload.chain, + from: payload.from, + hash: payload.hash, + to: payload.to, + }); + } break; } break; diff --git a/backend/notif-worker/src/processes.ts b/backend/notif-worker/src/processes.ts index 9c0b1b98..7a123dd9 100644 --- a/backend/notif-worker/src/processes.ts +++ b/backend/notif-worker/src/processes.ts @@ -5,18 +5,28 @@ import { OTP_CACHE_EXPIRE, TOTP_DIGITS, TOTP_TIME, + TokenTxn, TopicTypes, + TxnTopic, + TxnType, dbResStatus, } from "@paybox/common"; import { getClientFriendship } from "./db/friendship"; import { getUsername } from "./db/client"; import { notify } from "./notifier"; -import { getTxnDetails, insertCentTxn, insertTxn } from "./db/txn"; +import { + getTokenTxnDetails, + getTxnDetails, + insertCentTxn, + insertTokenTxn, + insertTxn, +} from "./db/txn"; import { RedisBase, upadteMobileEmail } from "@paybox/backend-common"; import { genOtp, sendOTP } from "./auth/utils"; import { addNotif } from "./db/notif"; import { getSubs, getSubsId } from "./db/notif-sub"; import { EthRpc, SolRpc } from "@paybox/blockchain"; +import { ProducerWorker } from "./kafka/producer"; /** * @@ -139,6 +149,7 @@ export const notifyReceiveTxn = async ( if (status === dbResStatus.Error || !username) { return; } + console.log("username", username); const { amount, @@ -380,7 +391,7 @@ export const finalizedTxn = async ({ console.log(hash, "txn not yet confirmed..."); return; } - const { status, id } = await insertTxn(ethTxn, from); + const { status, id } = await insertTxn(ethTxn, from, Network.Eth); if (status == dbResStatus.Error || !id) { console.log("DB mutate error..."); return; @@ -391,12 +402,36 @@ export const finalizedTxn = async ({ case Network.Sol: { - const solTxn = await SolRpc.getInstance().getTxn(hash); + let solTxn = null; + + solTxn = await SolRpc.getInstance().getTxn(hash); if (solTxn == null) { console.log(hash, "txn not confirmed"); + + await ProducerWorker.getInstance().publishOne({ + topic: TopicTypes.Txn, + message: [ + { + partition: 0, + key: hash, + value: JSON.stringify({ + type: TxnTopic.Finalized, + chain, + from, + to, + hash, + isTokenTxn: false, + }), + }, + ], + }); return; } - const { status, id } = await insertTxn(solTxn, from); + const { status, id } = await insertTxn( + solTxn as TxnType, + from, + Network.Sol, + ); if (status == dbResStatus.Error || !id) { console.log("DB mutate error..."); return; @@ -412,3 +447,118 @@ export const finalizedTxn = async ({ return; } }; + +export const finalizeTokenTxn = async ({ + chain, + hash, + from, + to, + isMint, +}: { + chain: Network; + hash: string; + from: string; + to: string; + isMint: boolean; +}): Promise => { + try { + let txnId = ""; + switch (chain) { + // case Network.Eth: + // { + // let ethTxn = await EthRpc.getInstance().getTxn(hash); + // if (ethTxn == null) { + // console.log(hash, "txn not yet confirmed..."); + // return; + // } + // const { status, id } = await insertTxn(ethTxn, from, Network.Eth); + // if (status == dbResStatus.Error || !id) { + // console.log("DB mutate error..."); + // return; + // } + // txnId = id; + // } + // break; + + case Network.Sol: + { + let solTxn = null; + + solTxn = await SolRpc.getInstance().getTokenTxn(hash); + if (solTxn == null) { + console.log(hash, "token txn not confirmed"); + + await ProducerWorker.getInstance().publishOne({ + topic: TopicTypes.Txn, + message: [ + { + partition: 0, + key: hash, + value: JSON.stringify({ + type: TxnTopic.Finalized, + chain, + from, + to, + hash, + isMint, + }), + }, + ], + }); + return; + } + const { status, id } = await insertTokenTxn({ + ...solTxn, + clientId: from, + isMint, + } as TokenTxn); + + if (status == dbResStatus.Error || !id) { + console.log("DB mutate error..."); + return; + } + txnId = id; + } + break; + } + isMint ? await notifyMintToken(to, from, txnId) : console.log(); + return; + } catch (error) { + console.log(error); + return; + } +}; + +export const notifyMintToken = async ( + to: string, + from: string, + txnId: string, +) => { + const { status, username } = await getUsername(from); + if (status === dbResStatus.Error || !username) { + return; + } + + const { amount, status: txnDetailsStatus } = await getTokenTxnDetails( + txnId, + to, + ); + if (txnDetailsStatus === dbResStatus.Error || !amount) { + return; + } + + await notify({ + to, + body: `Minted ${amount} tokens`, + title: `Token Mint Success...`, + href: getTxnHref(txnId), + image: + "https://img.freepik.com/free-psd/3d-illustration-person-with-sunglasses_23-2149436188.jpg?size=338&ext=jpg&ga=GA1.1.735520172.1711238400&semt=ais", + tag: NotifTopics.TxnAccept, + vibrate: [200, 100, 200], + payload: { + txnId, + }, + topic: TopicTypes.Notif, + }); +}; diff --git a/backend/zeus/src/codegen/types.ts b/backend/zeus/src/codegen/types.ts index f8a26fb2..21979fad 100644 --- a/backend/zeus/src/codegen/types.ts +++ b/backend/zeus/src/codegen/types.ts @@ -1096,9 +1096,57 @@ export type Ata = { token: Scalars['String']['output']; /** An object relationship */ tokenByToken: Token; + /** An array relationship */ + tokenTxnsByToata: Array; + /** An aggregate relationship */ + tokenTxnsByToata_aggregate: Token_Txn_Aggregate; + /** An array relationship */ + token_txns: Array; + /** An aggregate relationship */ + token_txns_aggregate: Token_Txn_Aggregate; updatedAt: Scalars['timestamptz']['output']; }; + +/** associated token account */ +export type AtaTokenTxnsByToataArgs = { + distinct_on?: InputMaybe>; + limit?: InputMaybe; + offset?: InputMaybe; + order_by?: InputMaybe>; + where?: InputMaybe; +}; + + +/** associated token account */ +export type AtaTokenTxnsByToata_AggregateArgs = { + distinct_on?: InputMaybe>; + limit?: InputMaybe; + offset?: InputMaybe; + order_by?: InputMaybe>; + where?: InputMaybe; +}; + + +/** associated token account */ +export type AtaToken_TxnsArgs = { + distinct_on?: InputMaybe>; + limit?: InputMaybe; + offset?: InputMaybe; + order_by?: InputMaybe>; + where?: InputMaybe; +}; + + +/** associated token account */ +export type AtaToken_Txns_AggregateArgs = { + distinct_on?: InputMaybe>; + limit?: InputMaybe; + offset?: InputMaybe; + order_by?: InputMaybe>; + where?: InputMaybe; +}; + /** aggregated selection of "ata" */ export type Ata_Aggregate = { __typename?: 'ata_aggregate'; @@ -1176,6 +1224,10 @@ export type Ata_Bool_Exp = { pubKey?: InputMaybe; token?: InputMaybe; tokenByToken?: InputMaybe; + tokenTxnsByToata?: InputMaybe; + tokenTxnsByToata_aggregate?: InputMaybe; + token_txns?: InputMaybe; + token_txns_aggregate?: InputMaybe; updatedAt?: InputMaybe; }; @@ -1198,6 +1250,8 @@ export type Ata_Insert_Input = { pubKey?: InputMaybe; token?: InputMaybe; tokenByToken?: InputMaybe; + tokenTxnsByToata?: InputMaybe; + token_txns?: InputMaybe; updatedAt?: InputMaybe; }; @@ -1256,6 +1310,13 @@ export type Ata_Mutation_Response = { returning: Array; }; +/** input type for inserting object relation for remote table "ata" */ +export type Ata_Obj_Rel_Insert_Input = { + data: Ata_Insert_Input; + /** upsert condition */ + on_conflict?: InputMaybe; +}; + /** on_conflict condition type for table "ata" */ export type Ata_On_Conflict = { constraint: Ata_Constraint; @@ -1274,6 +1335,8 @@ export type Ata_Order_By = { pubKey?: InputMaybe; token?: InputMaybe; tokenByToken?: InputMaybe; + tokenTxnsByToata_aggregate?: InputMaybe; + token_txns_aggregate?: InputMaybe; updatedAt?: InputMaybe; }; @@ -2584,6 +2647,10 @@ export type Client = { notifications_aggregate: Notification_Aggregate; password: Scalars['String']['output']; /** An array relationship */ + token_txns: Array; + /** An aggregate relationship */ + token_txns_aggregate: Token_Txn_Aggregate; + /** An array relationship */ tokens: Array; /** An aggregate relationship */ tokens_aggregate: Token_Aggregate; @@ -2781,6 +2848,26 @@ export type ClientNotifications_AggregateArgs = { }; +/** subscriber for paybox */ +export type ClientToken_TxnsArgs = { + distinct_on?: InputMaybe>; + limit?: InputMaybe; + offset?: InputMaybe; + order_by?: InputMaybe>; + where?: InputMaybe; +}; + + +/** subscriber for paybox */ +export type ClientToken_Txns_AggregateArgs = { + distinct_on?: InputMaybe>; + limit?: InputMaybe; + offset?: InputMaybe; + order_by?: InputMaybe>; + where?: InputMaybe; +}; + + /** subscriber for paybox */ export type ClientTokensArgs = { distinct_on?: InputMaybe>; @@ -2909,6 +2996,8 @@ export type Client_Bool_Exp = { notifications?: InputMaybe; notifications_aggregate?: InputMaybe; password?: InputMaybe; + token_txns?: InputMaybe; + token_txns_aggregate?: InputMaybe; tokens?: InputMaybe; tokens_aggregate?: InputMaybe; transactions?: InputMaybe; @@ -2956,6 +3045,7 @@ export type Client_Insert_Input = { notification_subscriptions?: InputMaybe; notifications?: InputMaybe; password?: InputMaybe; + token_txns?: InputMaybe; tokens?: InputMaybe; transactions?: InputMaybe; updatedAt?: InputMaybe; @@ -3036,6 +3126,7 @@ export type Client_Order_By = { notification_subscriptions_aggregate?: InputMaybe; notifications_aggregate?: InputMaybe; password?: InputMaybe; + token_txns_aggregate?: InputMaybe; tokens_aggregate?: InputMaybe; transactions_aggregate?: InputMaybe; updatedAt?: InputMaybe; @@ -4278,6 +4369,10 @@ export type Mutation_Root = { delete_token?: Maybe; /** delete single row from the table: "token" */ delete_token_by_pk?: Maybe; + /** delete data from the table: "token_txn" */ + delete_token_txn?: Maybe; + /** delete single row from the table: "token_txn" */ + delete_token_txn_by_pk?: Maybe; /** delete data from the table: "transactions" */ delete_transactions?: Maybe; /** delete single row from the table: "transactions" */ @@ -4362,6 +4457,10 @@ export type Mutation_Root = { insert_token?: Maybe; /** insert a single row into the table: "token" */ insert_token_one?: Maybe; + /** insert data into the table: "token_txn" */ + insert_token_txn?: Maybe; + /** insert a single row into the table: "token_txn" */ + insert_token_txn_one?: Maybe; /** insert data into the table: "transactions" */ insert_transactions?: Maybe; /** insert a single row into the table: "transactions" */ @@ -4484,6 +4583,12 @@ export type Mutation_Root = { update_token_by_pk?: Maybe; /** update multiples rows of table: "token" */ update_token_many?: Maybe>>; + /** update data of the table: "token_txn" */ + update_token_txn?: Maybe; + /** update single row of the table: "token_txn" */ + update_token_txn_by_pk?: Maybe; + /** update multiples rows of table: "token_txn" */ + update_token_txn_many?: Maybe>>; /** update data of the table: "transactions" */ update_transactions?: Maybe; /** update single row of the table: "transactions" */ @@ -4732,6 +4837,18 @@ export type Mutation_RootDelete_Token_By_PkArgs = { }; +/** mutation root */ +export type Mutation_RootDelete_Token_TxnArgs = { + where: Token_Txn_Bool_Exp; +}; + + +/** mutation root */ +export type Mutation_RootDelete_Token_Txn_By_PkArgs = { + id: Scalars['uuid']['input']; +}; + + /** mutation root */ export type Mutation_RootDelete_TransactionsArgs = { where: Transactions_Bool_Exp; @@ -5022,6 +5139,20 @@ export type Mutation_RootInsert_Token_OneArgs = { }; +/** mutation root */ +export type Mutation_RootInsert_Token_TxnArgs = { + objects: Array; + on_conflict?: InputMaybe; +}; + + +/** mutation root */ +export type Mutation_RootInsert_Token_Txn_OneArgs = { + object: Token_Txn_Insert_Input; + on_conflict?: InputMaybe; +}; + + /** mutation root */ export type Mutation_RootInsert_TransactionsArgs = { objects: Array; @@ -5434,6 +5565,28 @@ export type Mutation_RootUpdate_Token_ManyArgs = { }; +/** mutation root */ +export type Mutation_RootUpdate_Token_TxnArgs = { + _inc?: InputMaybe; + _set?: InputMaybe; + where: Token_Txn_Bool_Exp; +}; + + +/** mutation root */ +export type Mutation_RootUpdate_Token_Txn_By_PkArgs = { + _inc?: InputMaybe; + _set?: InputMaybe; + pk_columns: Token_Txn_Pk_Columns_Input; +}; + + +/** mutation root */ +export type Mutation_RootUpdate_Token_Txn_ManyArgs = { + updates: Array; +}; + + /** mutation root */ export type Mutation_RootUpdate_TransactionsArgs = { _inc?: InputMaybe; @@ -6623,6 +6776,12 @@ export type Query_Root = { token_aggregate: Token_Aggregate; /** fetch data from the table: "token" using primary key columns */ token_by_pk?: Maybe; + /** fetch data from the table: "token_txn" */ + token_txn: Array; + /** fetch aggregated fields from the table: "token_txn" */ + token_txn_aggregate: Token_Txn_Aggregate; + /** fetch data from the table: "token_txn" using primary key columns */ + token_txn_by_pk?: Maybe; /** An array relationship */ transactions: Array; /** An aggregate relationship */ @@ -7080,6 +7239,29 @@ export type Query_RootToken_By_PkArgs = { }; +export type Query_RootToken_TxnArgs = { + distinct_on?: InputMaybe>; + limit?: InputMaybe; + offset?: InputMaybe; + order_by?: InputMaybe>; + where?: InputMaybe; +}; + + +export type Query_RootToken_Txn_AggregateArgs = { + distinct_on?: InputMaybe>; + limit?: InputMaybe; + offset?: InputMaybe; + order_by?: InputMaybe>; + where?: InputMaybe; +}; + + +export type Query_RootToken_Txn_By_PkArgs = { + id: Scalars['uuid']['input']; +}; + + export type Query_RootTransactionsArgs = { distinct_on?: InputMaybe>; limit?: InputMaybe; @@ -7481,6 +7663,14 @@ export type Subscription_Root = { token_by_pk?: Maybe; /** fetch data from the table in a streaming manner: "token" */ token_stream: Array; + /** fetch data from the table: "token_txn" */ + token_txn: Array; + /** fetch aggregated fields from the table: "token_txn" */ + token_txn_aggregate: Token_Txn_Aggregate; + /** fetch data from the table: "token_txn" using primary key columns */ + token_txn_by_pk?: Maybe; + /** fetch data from the table in a streaming manner: "token_txn" */ + token_txn_stream: Array; /** An array relationship */ transactions: Array; /** An aggregate relationship */ @@ -8075,6 +8265,36 @@ export type Subscription_RootToken_StreamArgs = { }; +export type Subscription_RootToken_TxnArgs = { + distinct_on?: InputMaybe>; + limit?: InputMaybe; + offset?: InputMaybe; + order_by?: InputMaybe>; + where?: InputMaybe; +}; + + +export type Subscription_RootToken_Txn_AggregateArgs = { + distinct_on?: InputMaybe>; + limit?: InputMaybe; + offset?: InputMaybe; + order_by?: InputMaybe>; + where?: InputMaybe; +}; + + +export type Subscription_RootToken_Txn_By_PkArgs = { + id: Scalars['uuid']['input']; +}; + + +export type Subscription_RootToken_Txn_StreamArgs = { + batch_size: Scalars['Int']['input']; + cursor: Array>; + where?: InputMaybe; +}; + + export type Subscription_RootTransactionsArgs = { distinct_on?: InputMaybe>; limit?: InputMaybe; @@ -8178,6 +8398,10 @@ export type Token = { network: Scalars['String']['output']; privateKey: Scalars['String']['output']; pubKey: Scalars['String']['output']; + /** An array relationship */ + token_txns: Array; + /** An aggregate relationship */ + token_txns_aggregate: Token_Txn_Aggregate; updatedAt: Scalars['timestamptz']['output']; }; @@ -8201,6 +8425,26 @@ export type TokenAta_AggregateArgs = { where?: InputMaybe; }; + +/** table storing all the mint token infos */ +export type TokenToken_TxnsArgs = { + distinct_on?: InputMaybe>; + limit?: InputMaybe; + offset?: InputMaybe; + order_by?: InputMaybe>; + where?: InputMaybe; +}; + + +/** table storing all the mint token infos */ +export type TokenToken_Txns_AggregateArgs = { + distinct_on?: InputMaybe>; + limit?: InputMaybe; + offset?: InputMaybe; + order_by?: InputMaybe>; + where?: InputMaybe; +}; + /** aggregated selection of "token" */ export type Token_Aggregate = { __typename?: 'token_aggregate'; @@ -8265,6 +8509,8 @@ export type Token_Bool_Exp = { network?: InputMaybe; privateKey?: InputMaybe; pubKey?: InputMaybe; + token_txns?: InputMaybe; + token_txns_aggregate?: InputMaybe; updatedAt?: InputMaybe; }; @@ -8293,6 +8539,7 @@ export type Token_Insert_Input = { network?: InputMaybe; privateKey?: InputMaybe; pubKey?: InputMaybe; + token_txns?: InputMaybe; updatedAt?: InputMaybe; }; @@ -8390,6 +8637,7 @@ export type Token_Order_By = { network?: InputMaybe; privateKey?: InputMaybe; pubKey?: InputMaybe; + token_txns_aggregate?: InputMaybe; updatedAt?: InputMaybe; }; @@ -8459,6 +8707,700 @@ export type Token_Stream_Cursor_Value_Input = { updatedAt?: InputMaybe; }; +/** all the token transactions */ +export type Token_Txn = { + __typename?: 'token_txn'; + amount: Scalars['float8']['output']; + blockHash: Scalars['String']['output']; + clientId: Scalars['uuid']['output']; + created_at: Scalars['timestamptz']['output']; + fee: Scalars['float8']['output']; + fromAta: Scalars['String']['output']; + hash: Scalars['String']['output']; + id: Scalars['uuid']['output']; + isMint: Scalars['Boolean']['output']; + network: Scalars['String']['output']; + slot: Scalars['bigint']['output']; + status: Scalars['String']['output']; + time: Scalars['timestamptz']['output']; + toAta: Scalars['String']['output']; + token: Scalars['String']['output']; + /** An object relationship */ + token_txn_to_client: Client; + /** An object relationship */ + token_txn_to_token: Token; + /** An object relationship */ + txn_fromAta_to_ata: Ata; + /** An object relationship */ + txn_toAta_to_ata: Ata; + updated_at: Scalars['timestamptz']['output']; +}; + +/** aggregated selection of "token_txn" */ +export type Token_Txn_Aggregate = { + __typename?: 'token_txn_aggregate'; + aggregate?: Maybe; + nodes: Array; +}; + +export type Token_Txn_Aggregate_Bool_Exp = { + avg?: InputMaybe; + bool_and?: InputMaybe; + bool_or?: InputMaybe; + corr?: InputMaybe; + count?: InputMaybe; + covar_samp?: InputMaybe; + max?: InputMaybe; + min?: InputMaybe; + stddev_samp?: InputMaybe; + sum?: InputMaybe; + var_samp?: InputMaybe; +}; + +export type Token_Txn_Aggregate_Bool_Exp_Avg = { + arguments: Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Avg_Arguments_Columns; + distinct?: InputMaybe; + filter?: InputMaybe; + predicate: Float8_Comparison_Exp; +}; + +export type Token_Txn_Aggregate_Bool_Exp_Bool_And = { + arguments: Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Bool_And_Arguments_Columns; + distinct?: InputMaybe; + filter?: InputMaybe; + predicate: Boolean_Comparison_Exp; +}; + +export type Token_Txn_Aggregate_Bool_Exp_Bool_Or = { + arguments: Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Bool_Or_Arguments_Columns; + distinct?: InputMaybe; + filter?: InputMaybe; + predicate: Boolean_Comparison_Exp; +}; + +export type Token_Txn_Aggregate_Bool_Exp_Corr = { + arguments: Token_Txn_Aggregate_Bool_Exp_Corr_Arguments; + distinct?: InputMaybe; + filter?: InputMaybe; + predicate: Float8_Comparison_Exp; +}; + +export type Token_Txn_Aggregate_Bool_Exp_Corr_Arguments = { + X: Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Corr_Arguments_Columns; + Y: Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Corr_Arguments_Columns; +}; + +export type Token_Txn_Aggregate_Bool_Exp_Count = { + arguments?: InputMaybe>; + distinct?: InputMaybe; + filter?: InputMaybe; + predicate: Int_Comparison_Exp; +}; + +export type Token_Txn_Aggregate_Bool_Exp_Covar_Samp = { + arguments: Token_Txn_Aggregate_Bool_Exp_Covar_Samp_Arguments; + distinct?: InputMaybe; + filter?: InputMaybe; + predicate: Float8_Comparison_Exp; +}; + +export type Token_Txn_Aggregate_Bool_Exp_Covar_Samp_Arguments = { + X: Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Covar_Samp_Arguments_Columns; + Y: Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Covar_Samp_Arguments_Columns; +}; + +export type Token_Txn_Aggregate_Bool_Exp_Max = { + arguments: Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Max_Arguments_Columns; + distinct?: InputMaybe; + filter?: InputMaybe; + predicate: Float8_Comparison_Exp; +}; + +export type Token_Txn_Aggregate_Bool_Exp_Min = { + arguments: Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Min_Arguments_Columns; + distinct?: InputMaybe; + filter?: InputMaybe; + predicate: Float8_Comparison_Exp; +}; + +export type Token_Txn_Aggregate_Bool_Exp_Stddev_Samp = { + arguments: Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Stddev_Samp_Arguments_Columns; + distinct?: InputMaybe; + filter?: InputMaybe; + predicate: Float8_Comparison_Exp; +}; + +export type Token_Txn_Aggregate_Bool_Exp_Sum = { + arguments: Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Sum_Arguments_Columns; + distinct?: InputMaybe; + filter?: InputMaybe; + predicate: Float8_Comparison_Exp; +}; + +export type Token_Txn_Aggregate_Bool_Exp_Var_Samp = { + arguments: Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Var_Samp_Arguments_Columns; + distinct?: InputMaybe; + filter?: InputMaybe; + predicate: Float8_Comparison_Exp; +}; + +/** aggregate fields of "token_txn" */ +export type Token_Txn_Aggregate_Fields = { + __typename?: 'token_txn_aggregate_fields'; + avg?: Maybe; + count: Scalars['Int']['output']; + max?: Maybe; + min?: Maybe; + stddev?: Maybe; + stddev_pop?: Maybe; + stddev_samp?: Maybe; + sum?: Maybe; + var_pop?: Maybe; + var_samp?: Maybe; + variance?: Maybe; +}; + + +/** aggregate fields of "token_txn" */ +export type Token_Txn_Aggregate_FieldsCountArgs = { + columns?: InputMaybe>; + distinct?: InputMaybe; +}; + +/** order by aggregate values of table "token_txn" */ +export type Token_Txn_Aggregate_Order_By = { + avg?: InputMaybe; + count?: InputMaybe; + max?: InputMaybe; + min?: InputMaybe; + stddev?: InputMaybe; + stddev_pop?: InputMaybe; + stddev_samp?: InputMaybe; + sum?: InputMaybe; + var_pop?: InputMaybe; + var_samp?: InputMaybe; + variance?: InputMaybe; +}; + +/** input type for inserting array relation for remote table "token_txn" */ +export type Token_Txn_Arr_Rel_Insert_Input = { + data: Array; + /** upsert condition */ + on_conflict?: InputMaybe; +}; + +/** aggregate avg on columns */ +export type Token_Txn_Avg_Fields = { + __typename?: 'token_txn_avg_fields'; + amount?: Maybe; + fee?: Maybe; + slot?: Maybe; +}; + +/** order by avg() on columns of table "token_txn" */ +export type Token_Txn_Avg_Order_By = { + amount?: InputMaybe; + fee?: InputMaybe; + slot?: InputMaybe; +}; + +/** Boolean expression to filter rows from the table "token_txn". All fields are combined with a logical 'AND'. */ +export type Token_Txn_Bool_Exp = { + _and?: InputMaybe>; + _not?: InputMaybe; + _or?: InputMaybe>; + amount?: InputMaybe; + blockHash?: InputMaybe; + clientId?: InputMaybe; + created_at?: InputMaybe; + fee?: InputMaybe; + fromAta?: InputMaybe; + hash?: InputMaybe; + id?: InputMaybe; + isMint?: InputMaybe; + network?: InputMaybe; + slot?: InputMaybe; + status?: InputMaybe; + time?: InputMaybe; + toAta?: InputMaybe; + token?: InputMaybe; + token_txn_to_client?: InputMaybe; + token_txn_to_token?: InputMaybe; + txn_fromAta_to_ata?: InputMaybe; + txn_toAta_to_ata?: InputMaybe; + updated_at?: InputMaybe; +}; + +/** unique or primary key constraints on table "token_txn" */ +export enum Token_Txn_Constraint { + /** unique or primary key constraint on columns "id" */ + TokenTxnPkey = 'token_txn_pkey' +} + +/** input type for incrementing numeric columns in table "token_txn" */ +export type Token_Txn_Inc_Input = { + amount?: InputMaybe; + fee?: InputMaybe; + slot?: InputMaybe; +}; + +/** input type for inserting data into table "token_txn" */ +export type Token_Txn_Insert_Input = { + amount?: InputMaybe; + blockHash?: InputMaybe; + clientId?: InputMaybe; + created_at?: InputMaybe; + fee?: InputMaybe; + fromAta?: InputMaybe; + hash?: InputMaybe; + id?: InputMaybe; + isMint?: InputMaybe; + network?: InputMaybe; + slot?: InputMaybe; + status?: InputMaybe; + time?: InputMaybe; + toAta?: InputMaybe; + token?: InputMaybe; + token_txn_to_client?: InputMaybe; + token_txn_to_token?: InputMaybe; + txn_fromAta_to_ata?: InputMaybe; + txn_toAta_to_ata?: InputMaybe; + updated_at?: InputMaybe; +}; + +/** aggregate max on columns */ +export type Token_Txn_Max_Fields = { + __typename?: 'token_txn_max_fields'; + amount?: Maybe; + blockHash?: Maybe; + clientId?: Maybe; + created_at?: Maybe; + fee?: Maybe; + fromAta?: Maybe; + hash?: Maybe; + id?: Maybe; + network?: Maybe; + slot?: Maybe; + status?: Maybe; + time?: Maybe; + toAta?: Maybe; + token?: Maybe; + updated_at?: Maybe; +}; + +/** order by max() on columns of table "token_txn" */ +export type Token_Txn_Max_Order_By = { + amount?: InputMaybe; + blockHash?: InputMaybe; + clientId?: InputMaybe; + created_at?: InputMaybe; + fee?: InputMaybe; + fromAta?: InputMaybe; + hash?: InputMaybe; + id?: InputMaybe; + network?: InputMaybe; + slot?: InputMaybe; + status?: InputMaybe; + time?: InputMaybe; + toAta?: InputMaybe; + token?: InputMaybe; + updated_at?: InputMaybe; +}; + +/** aggregate min on columns */ +export type Token_Txn_Min_Fields = { + __typename?: 'token_txn_min_fields'; + amount?: Maybe; + blockHash?: Maybe; + clientId?: Maybe; + created_at?: Maybe; + fee?: Maybe; + fromAta?: Maybe; + hash?: Maybe; + id?: Maybe; + network?: Maybe; + slot?: Maybe; + status?: Maybe; + time?: Maybe; + toAta?: Maybe; + token?: Maybe; + updated_at?: Maybe; +}; + +/** order by min() on columns of table "token_txn" */ +export type Token_Txn_Min_Order_By = { + amount?: InputMaybe; + blockHash?: InputMaybe; + clientId?: InputMaybe; + created_at?: InputMaybe; + fee?: InputMaybe; + fromAta?: InputMaybe; + hash?: InputMaybe; + id?: InputMaybe; + network?: InputMaybe; + slot?: InputMaybe; + status?: InputMaybe; + time?: InputMaybe; + toAta?: InputMaybe; + token?: InputMaybe; + updated_at?: InputMaybe; +}; + +/** response of any mutation on the table "token_txn" */ +export type Token_Txn_Mutation_Response = { + __typename?: 'token_txn_mutation_response'; + /** number of rows affected by the mutation */ + affected_rows: Scalars['Int']['output']; + /** data from the rows affected by the mutation */ + returning: Array; +}; + +/** on_conflict condition type for table "token_txn" */ +export type Token_Txn_On_Conflict = { + constraint: Token_Txn_Constraint; + update_columns?: Array; + where?: InputMaybe; +}; + +/** Ordering options when selecting data from "token_txn". */ +export type Token_Txn_Order_By = { + amount?: InputMaybe; + blockHash?: InputMaybe; + clientId?: InputMaybe; + created_at?: InputMaybe; + fee?: InputMaybe; + fromAta?: InputMaybe; + hash?: InputMaybe; + id?: InputMaybe; + isMint?: InputMaybe; + network?: InputMaybe; + slot?: InputMaybe; + status?: InputMaybe; + time?: InputMaybe; + toAta?: InputMaybe; + token?: InputMaybe; + token_txn_to_client?: InputMaybe; + token_txn_to_token?: InputMaybe; + txn_fromAta_to_ata?: InputMaybe; + txn_toAta_to_ata?: InputMaybe; + updated_at?: InputMaybe; +}; + +/** primary key columns input for table: token_txn */ +export type Token_Txn_Pk_Columns_Input = { + id: Scalars['uuid']['input']; +}; + +/** select columns of table "token_txn" */ +export enum Token_Txn_Select_Column { + /** column name */ + Amount = 'amount', + /** column name */ + BlockHash = 'blockHash', + /** column name */ + ClientId = 'clientId', + /** column name */ + CreatedAt = 'created_at', + /** column name */ + Fee = 'fee', + /** column name */ + FromAta = 'fromAta', + /** column name */ + Hash = 'hash', + /** column name */ + Id = 'id', + /** column name */ + IsMint = 'isMint', + /** column name */ + Network = 'network', + /** column name */ + Slot = 'slot', + /** column name */ + Status = 'status', + /** column name */ + Time = 'time', + /** column name */ + ToAta = 'toAta', + /** column name */ + Token = 'token', + /** column name */ + UpdatedAt = 'updated_at' +} + +/** select "token_txn_aggregate_bool_exp_avg_arguments_columns" columns of table "token_txn" */ +export enum Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Avg_Arguments_Columns { + /** column name */ + Amount = 'amount', + /** column name */ + Fee = 'fee' +} + +/** select "token_txn_aggregate_bool_exp_bool_and_arguments_columns" columns of table "token_txn" */ +export enum Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Bool_And_Arguments_Columns { + /** column name */ + IsMint = 'isMint' +} + +/** select "token_txn_aggregate_bool_exp_bool_or_arguments_columns" columns of table "token_txn" */ +export enum Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Bool_Or_Arguments_Columns { + /** column name */ + IsMint = 'isMint' +} + +/** select "token_txn_aggregate_bool_exp_corr_arguments_columns" columns of table "token_txn" */ +export enum Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Corr_Arguments_Columns { + /** column name */ + Amount = 'amount', + /** column name */ + Fee = 'fee' +} + +/** select "token_txn_aggregate_bool_exp_covar_samp_arguments_columns" columns of table "token_txn" */ +export enum Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Covar_Samp_Arguments_Columns { + /** column name */ + Amount = 'amount', + /** column name */ + Fee = 'fee' +} + +/** select "token_txn_aggregate_bool_exp_max_arguments_columns" columns of table "token_txn" */ +export enum Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Max_Arguments_Columns { + /** column name */ + Amount = 'amount', + /** column name */ + Fee = 'fee' +} + +/** select "token_txn_aggregate_bool_exp_min_arguments_columns" columns of table "token_txn" */ +export enum Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Min_Arguments_Columns { + /** column name */ + Amount = 'amount', + /** column name */ + Fee = 'fee' +} + +/** select "token_txn_aggregate_bool_exp_stddev_samp_arguments_columns" columns of table "token_txn" */ +export enum Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Stddev_Samp_Arguments_Columns { + /** column name */ + Amount = 'amount', + /** column name */ + Fee = 'fee' +} + +/** select "token_txn_aggregate_bool_exp_sum_arguments_columns" columns of table "token_txn" */ +export enum Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Sum_Arguments_Columns { + /** column name */ + Amount = 'amount', + /** column name */ + Fee = 'fee' +} + +/** select "token_txn_aggregate_bool_exp_var_samp_arguments_columns" columns of table "token_txn" */ +export enum Token_Txn_Select_Column_Token_Txn_Aggregate_Bool_Exp_Var_Samp_Arguments_Columns { + /** column name */ + Amount = 'amount', + /** column name */ + Fee = 'fee' +} + +/** input type for updating data in table "token_txn" */ +export type Token_Txn_Set_Input = { + amount?: InputMaybe; + blockHash?: InputMaybe; + clientId?: InputMaybe; + created_at?: InputMaybe; + fee?: InputMaybe; + fromAta?: InputMaybe; + hash?: InputMaybe; + id?: InputMaybe; + isMint?: InputMaybe; + network?: InputMaybe; + slot?: InputMaybe; + status?: InputMaybe; + time?: InputMaybe; + toAta?: InputMaybe; + token?: InputMaybe; + updated_at?: InputMaybe; +}; + +/** aggregate stddev on columns */ +export type Token_Txn_Stddev_Fields = { + __typename?: 'token_txn_stddev_fields'; + amount?: Maybe; + fee?: Maybe; + slot?: Maybe; +}; + +/** order by stddev() on columns of table "token_txn" */ +export type Token_Txn_Stddev_Order_By = { + amount?: InputMaybe; + fee?: InputMaybe; + slot?: InputMaybe; +}; + +/** aggregate stddev_pop on columns */ +export type Token_Txn_Stddev_Pop_Fields = { + __typename?: 'token_txn_stddev_pop_fields'; + amount?: Maybe; + fee?: Maybe; + slot?: Maybe; +}; + +/** order by stddev_pop() on columns of table "token_txn" */ +export type Token_Txn_Stddev_Pop_Order_By = { + amount?: InputMaybe; + fee?: InputMaybe; + slot?: InputMaybe; +}; + +/** aggregate stddev_samp on columns */ +export type Token_Txn_Stddev_Samp_Fields = { + __typename?: 'token_txn_stddev_samp_fields'; + amount?: Maybe; + fee?: Maybe; + slot?: Maybe; +}; + +/** order by stddev_samp() on columns of table "token_txn" */ +export type Token_Txn_Stddev_Samp_Order_By = { + amount?: InputMaybe; + fee?: InputMaybe; + slot?: InputMaybe; +}; + +/** Streaming cursor of the table "token_txn" */ +export type Token_Txn_Stream_Cursor_Input = { + /** Stream column input with initial value */ + initial_value: Token_Txn_Stream_Cursor_Value_Input; + /** cursor ordering */ + ordering?: InputMaybe; +}; + +/** Initial value of the column from where the streaming should start */ +export type Token_Txn_Stream_Cursor_Value_Input = { + amount?: InputMaybe; + blockHash?: InputMaybe; + clientId?: InputMaybe; + created_at?: InputMaybe; + fee?: InputMaybe; + fromAta?: InputMaybe; + hash?: InputMaybe; + id?: InputMaybe; + isMint?: InputMaybe; + network?: InputMaybe; + slot?: InputMaybe; + status?: InputMaybe; + time?: InputMaybe; + toAta?: InputMaybe; + token?: InputMaybe; + updated_at?: InputMaybe; +}; + +/** aggregate sum on columns */ +export type Token_Txn_Sum_Fields = { + __typename?: 'token_txn_sum_fields'; + amount?: Maybe; + fee?: Maybe; + slot?: Maybe; +}; + +/** order by sum() on columns of table "token_txn" */ +export type Token_Txn_Sum_Order_By = { + amount?: InputMaybe; + fee?: InputMaybe; + slot?: InputMaybe; +}; + +/** update columns of table "token_txn" */ +export enum Token_Txn_Update_Column { + /** column name */ + Amount = 'amount', + /** column name */ + BlockHash = 'blockHash', + /** column name */ + ClientId = 'clientId', + /** column name */ + CreatedAt = 'created_at', + /** column name */ + Fee = 'fee', + /** column name */ + FromAta = 'fromAta', + /** column name */ + Hash = 'hash', + /** column name */ + Id = 'id', + /** column name */ + IsMint = 'isMint', + /** column name */ + Network = 'network', + /** column name */ + Slot = 'slot', + /** column name */ + Status = 'status', + /** column name */ + Time = 'time', + /** column name */ + ToAta = 'toAta', + /** column name */ + Token = 'token', + /** column name */ + UpdatedAt = 'updated_at' +} + +export type Token_Txn_Updates = { + /** increments the numeric columns with given value of the filtered values */ + _inc?: InputMaybe; + /** sets the columns of the filtered rows to the given values */ + _set?: InputMaybe; + /** filter the rows which have to be updated */ + where: Token_Txn_Bool_Exp; +}; + +/** aggregate var_pop on columns */ +export type Token_Txn_Var_Pop_Fields = { + __typename?: 'token_txn_var_pop_fields'; + amount?: Maybe; + fee?: Maybe; + slot?: Maybe; +}; + +/** order by var_pop() on columns of table "token_txn" */ +export type Token_Txn_Var_Pop_Order_By = { + amount?: InputMaybe; + fee?: InputMaybe; + slot?: InputMaybe; +}; + +/** aggregate var_samp on columns */ +export type Token_Txn_Var_Samp_Fields = { + __typename?: 'token_txn_var_samp_fields'; + amount?: Maybe; + fee?: Maybe; + slot?: Maybe; +}; + +/** order by var_samp() on columns of table "token_txn" */ +export type Token_Txn_Var_Samp_Order_By = { + amount?: InputMaybe; + fee?: InputMaybe; + slot?: InputMaybe; +}; + +/** aggregate variance on columns */ +export type Token_Txn_Variance_Fields = { + __typename?: 'token_txn_variance_fields'; + amount?: Maybe; + fee?: Maybe; + slot?: Maybe; +}; + +/** order by variance() on columns of table "token_txn" */ +export type Token_Txn_Variance_Order_By = { + amount?: InputMaybe; + fee?: InputMaybe; + slot?: InputMaybe; +}; + /** update columns of table "token" */ export enum Token_Update_Column { /** column name */ diff --git a/backend/zeus/src/zeus/const.ts b/backend/zeus/src/zeus/const.ts index 34a8a154..7f9a8767 100644 --- a/backend/zeus/src/zeus/const.ts +++ b/backend/zeus/src/zeus/const.ts @@ -402,6 +402,28 @@ export const AllTypesProps: Record = { _set: "analyze_set_input", where: "analyze_bool_exp", }, + ata: { + tokenTxnsByToata: { + distinct_on: "token_txn_select_column", + order_by: "token_txn_order_by", + where: "token_txn_bool_exp", + }, + tokenTxnsByToata_aggregate: { + distinct_on: "token_txn_select_column", + order_by: "token_txn_order_by", + where: "token_txn_bool_exp", + }, + token_txns: { + distinct_on: "token_txn_select_column", + order_by: "token_txn_order_by", + where: "token_txn_bool_exp", + }, + token_txns_aggregate: { + distinct_on: "token_txn_select_column", + order_by: "token_txn_order_by", + where: "token_txn_bool_exp", + }, + }, ata_aggregate_bool_exp: { bool_and: "ata_aggregate_bool_exp_bool_and", bool_or: "ata_aggregate_bool_exp_bool_or", @@ -451,6 +473,10 @@ export const AllTypesProps: Record = { pubKey: "String_comparison_exp", token: "String_comparison_exp", tokenByToken: "token_bool_exp", + tokenTxnsByToata: "token_txn_bool_exp", + tokenTxnsByToata_aggregate: "token_txn_aggregate_bool_exp", + token_txns: "token_txn_bool_exp", + token_txns_aggregate: "token_txn_aggregate_bool_exp", updatedAt: "timestamptz_comparison_exp", }, ata_constraint: "enum" as const, @@ -460,6 +486,8 @@ export const AllTypesProps: Record = { createdAt: "timestamptz", id: "uuid", tokenByToken: "token_obj_rel_insert_input", + tokenTxnsByToata: "token_txn_arr_rel_insert_input", + token_txns: "token_txn_arr_rel_insert_input", updatedAt: "timestamptz", }, ata_max_order_by: { @@ -480,6 +508,10 @@ export const AllTypesProps: Record = { token: "order_by", updatedAt: "order_by", }, + ata_obj_rel_insert_input: { + data: "ata_insert_input", + on_conflict: "ata_on_conflict", + }, ata_on_conflict: { constraint: "ata_constraint", update_columns: "ata_update_column", @@ -495,6 +527,8 @@ export const AllTypesProps: Record = { pubKey: "order_by", token: "order_by", tokenByToken: "token_order_by", + tokenTxnsByToata_aggregate: "token_txn_aggregate_order_by", + token_txns_aggregate: "token_txn_aggregate_order_by", updatedAt: "order_by", }, ata_pk_columns_input: { @@ -1095,6 +1129,16 @@ export const AllTypesProps: Record = { order_by: "notification_order_by", where: "notification_bool_exp", }, + token_txns: { + distinct_on: "token_txn_select_column", + order_by: "token_txn_order_by", + where: "token_txn_bool_exp", + }, + token_txns_aggregate: { + distinct_on: "token_txn_select_column", + order_by: "token_txn_order_by", + where: "token_txn_bool_exp", + }, tokens: { distinct_on: "token_select_column", order_by: "token_order_by", @@ -1164,6 +1208,8 @@ export const AllTypesProps: Record = { notifications: "notification_bool_exp", notifications_aggregate: "notification_aggregate_bool_exp", password: "String_comparison_exp", + token_txns: "token_txn_bool_exp", + token_txns_aggregate: "token_txn_aggregate_bool_exp", tokens: "token_bool_exp", tokens_aggregate: "token_aggregate_bool_exp", transactions: "transactions_bool_exp", @@ -1195,6 +1241,7 @@ export const AllTypesProps: Record = { notification_subscriptions: "notification_subscription_arr_rel_insert_input", notifications: "notification_arr_rel_insert_input", + token_txns: "token_txn_arr_rel_insert_input", tokens: "token_arr_rel_insert_input", transactions: "transactions_arr_rel_insert_input", updatedAt: "timestamptz", @@ -1230,6 +1277,7 @@ export const AllTypesProps: Record = { "notification_subscription_aggregate_order_by", notifications_aggregate: "notification_aggregate_order_by", password: "order_by", + token_txns_aggregate: "token_txn_aggregate_order_by", tokens_aggregate: "token_aggregate_order_by", transactions_aggregate: "transactions_aggregate_order_by", updatedAt: "order_by", @@ -1748,6 +1796,12 @@ export const AllTypesProps: Record = { delete_token_by_pk: { id: "uuid", }, + delete_token_txn: { + where: "token_txn_bool_exp", + }, + delete_token_txn_by_pk: { + id: "uuid", + }, delete_transactions: { where: "transactions_bool_exp", }, @@ -1912,6 +1966,14 @@ export const AllTypesProps: Record = { object: "token_insert_input", on_conflict: "token_on_conflict", }, + insert_token_txn: { + objects: "token_txn_insert_input", + on_conflict: "token_txn_on_conflict", + }, + insert_token_txn_one: { + object: "token_txn_insert_input", + on_conflict: "token_txn_on_conflict", + }, insert_transactions: { objects: "transactions_insert_input", on_conflict: "transactions_on_conflict", @@ -2141,6 +2203,19 @@ export const AllTypesProps: Record = { update_token_many: { updates: "token_updates", }, + update_token_txn: { + _inc: "token_txn_inc_input", + _set: "token_txn_set_input", + where: "token_txn_bool_exp", + }, + update_token_txn_by_pk: { + _inc: "token_txn_inc_input", + _set: "token_txn_set_input", + pk_columns: "token_txn_pk_columns_input", + }, + update_token_txn_many: { + updates: "token_txn_updates", + }, update_transactions: { _inc: "transactions_inc_input", _set: "transactions_set_input", @@ -2840,6 +2915,19 @@ export const AllTypesProps: Record = { token_by_pk: { id: "uuid", }, + token_txn: { + distinct_on: "token_txn_select_column", + order_by: "token_txn_order_by", + where: "token_txn_bool_exp", + }, + token_txn_aggregate: { + distinct_on: "token_txn_select_column", + order_by: "token_txn_order_by", + where: "token_txn_bool_exp", + }, + token_txn_by_pk: { + id: "uuid", + }, transactions: { distinct_on: "transactions_select_column", order_by: "transactions_order_by", @@ -3261,6 +3349,23 @@ export const AllTypesProps: Record = { cursor: "token_stream_cursor_input", where: "token_bool_exp", }, + token_txn: { + distinct_on: "token_txn_select_column", + order_by: "token_txn_order_by", + where: "token_txn_bool_exp", + }, + token_txn_aggregate: { + distinct_on: "token_txn_select_column", + order_by: "token_txn_order_by", + where: "token_txn_bool_exp", + }, + token_txn_by_pk: { + id: "uuid", + }, + token_txn_stream: { + cursor: "token_txn_stream_cursor_input", + where: "token_txn_bool_exp", + }, transactions: { distinct_on: "transactions_select_column", order_by: "transactions_order_by", @@ -3329,6 +3434,16 @@ export const AllTypesProps: Record = { order_by: "ata_order_by", where: "ata_bool_exp", }, + token_txns: { + distinct_on: "token_txn_select_column", + order_by: "token_txn_order_by", + where: "token_txn_bool_exp", + }, + token_txns_aggregate: { + distinct_on: "token_txn_select_column", + order_by: "token_txn_order_by", + where: "token_txn_bool_exp", + }, }, token_aggregate_bool_exp: { count: "token_aggregate_bool_exp_count", @@ -3368,6 +3483,8 @@ export const AllTypesProps: Record = { network: "String_comparison_exp", privateKey: "String_comparison_exp", pubKey: "String_comparison_exp", + token_txns: "token_txn_bool_exp", + token_txns_aggregate: "token_txn_aggregate_bool_exp", updatedAt: "timestamptz_comparison_exp", }, token_constraint: "enum" as const, @@ -3377,6 +3494,7 @@ export const AllTypesProps: Record = { clientId: "uuid", createdAt: "timestamptz", id: "uuid", + token_txns: "token_txn_arr_rel_insert_input", updatedAt: "timestamptz", }, token_max_order_by: { @@ -3424,6 +3542,7 @@ export const AllTypesProps: Record = { network: "order_by", privateKey: "order_by", pubKey: "order_by", + token_txns_aggregate: "token_txn_aggregate_order_by", updatedAt: "order_by", }, token_pk_columns_input: { @@ -3446,6 +3565,312 @@ export const AllTypesProps: Record = { id: "uuid", updatedAt: "timestamptz", }, + token_txn_aggregate_bool_exp: { + avg: "token_txn_aggregate_bool_exp_avg", + bool_and: "token_txn_aggregate_bool_exp_bool_and", + bool_or: "token_txn_aggregate_bool_exp_bool_or", + corr: "token_txn_aggregate_bool_exp_corr", + count: "token_txn_aggregate_bool_exp_count", + covar_samp: "token_txn_aggregate_bool_exp_covar_samp", + max: "token_txn_aggregate_bool_exp_max", + min: "token_txn_aggregate_bool_exp_min", + stddev_samp: "token_txn_aggregate_bool_exp_stddev_samp", + sum: "token_txn_aggregate_bool_exp_sum", + var_samp: "token_txn_aggregate_bool_exp_var_samp", + }, + token_txn_aggregate_bool_exp_avg: { + arguments: + "token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns", + filter: "token_txn_bool_exp", + predicate: "float8_comparison_exp", + }, + token_txn_aggregate_bool_exp_bool_and: { + arguments: + "token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns", + filter: "token_txn_bool_exp", + predicate: "Boolean_comparison_exp", + }, + token_txn_aggregate_bool_exp_bool_or: { + arguments: + "token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns", + filter: "token_txn_bool_exp", + predicate: "Boolean_comparison_exp", + }, + token_txn_aggregate_bool_exp_corr: { + arguments: "token_txn_aggregate_bool_exp_corr_arguments", + filter: "token_txn_bool_exp", + predicate: "float8_comparison_exp", + }, + token_txn_aggregate_bool_exp_corr_arguments: { + X: "token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns", + Y: "token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns", + }, + token_txn_aggregate_bool_exp_count: { + arguments: "token_txn_select_column", + filter: "token_txn_bool_exp", + predicate: "Int_comparison_exp", + }, + token_txn_aggregate_bool_exp_covar_samp: { + arguments: "token_txn_aggregate_bool_exp_covar_samp_arguments", + filter: "token_txn_bool_exp", + predicate: "float8_comparison_exp", + }, + token_txn_aggregate_bool_exp_covar_samp_arguments: { + X: "token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns", + Y: "token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns", + }, + token_txn_aggregate_bool_exp_max: { + arguments: + "token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns", + filter: "token_txn_bool_exp", + predicate: "float8_comparison_exp", + }, + token_txn_aggregate_bool_exp_min: { + arguments: + "token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns", + filter: "token_txn_bool_exp", + predicate: "float8_comparison_exp", + }, + token_txn_aggregate_bool_exp_stddev_samp: { + arguments: + "token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns", + filter: "token_txn_bool_exp", + predicate: "float8_comparison_exp", + }, + token_txn_aggregate_bool_exp_sum: { + arguments: + "token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns", + filter: "token_txn_bool_exp", + predicate: "float8_comparison_exp", + }, + token_txn_aggregate_bool_exp_var_samp: { + arguments: + "token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns", + filter: "token_txn_bool_exp", + predicate: "float8_comparison_exp", + }, + token_txn_aggregate_fields: { + count: { + columns: "token_txn_select_column", + }, + }, + token_txn_aggregate_order_by: { + avg: "token_txn_avg_order_by", + count: "order_by", + max: "token_txn_max_order_by", + min: "token_txn_min_order_by", + stddev: "token_txn_stddev_order_by", + stddev_pop: "token_txn_stddev_pop_order_by", + stddev_samp: "token_txn_stddev_samp_order_by", + sum: "token_txn_sum_order_by", + var_pop: "token_txn_var_pop_order_by", + var_samp: "token_txn_var_samp_order_by", + variance: "token_txn_variance_order_by", + }, + token_txn_arr_rel_insert_input: { + data: "token_txn_insert_input", + on_conflict: "token_txn_on_conflict", + }, + token_txn_avg_order_by: { + amount: "order_by", + fee: "order_by", + slot: "order_by", + }, + token_txn_bool_exp: { + _and: "token_txn_bool_exp", + _not: "token_txn_bool_exp", + _or: "token_txn_bool_exp", + amount: "float8_comparison_exp", + blockHash: "String_comparison_exp", + clientId: "uuid_comparison_exp", + created_at: "timestamptz_comparison_exp", + fee: "float8_comparison_exp", + fromAta: "String_comparison_exp", + hash: "String_comparison_exp", + id: "uuid_comparison_exp", + isMint: "Boolean_comparison_exp", + network: "String_comparison_exp", + slot: "bigint_comparison_exp", + status: "String_comparison_exp", + time: "timestamptz_comparison_exp", + toAta: "String_comparison_exp", + token: "String_comparison_exp", + token_txn_to_client: "client_bool_exp", + token_txn_to_token: "token_bool_exp", + txn_fromAta_to_ata: "ata_bool_exp", + txn_toAta_to_ata: "ata_bool_exp", + updated_at: "timestamptz_comparison_exp", + }, + token_txn_constraint: "enum" as const, + token_txn_inc_input: { + amount: "float8", + fee: "float8", + slot: "bigint", + }, + token_txn_insert_input: { + amount: "float8", + clientId: "uuid", + created_at: "timestamptz", + fee: "float8", + id: "uuid", + slot: "bigint", + time: "timestamptz", + token_txn_to_client: "client_obj_rel_insert_input", + token_txn_to_token: "token_obj_rel_insert_input", + txn_fromAta_to_ata: "ata_obj_rel_insert_input", + txn_toAta_to_ata: "ata_obj_rel_insert_input", + updated_at: "timestamptz", + }, + token_txn_max_order_by: { + amount: "order_by", + blockHash: "order_by", + clientId: "order_by", + created_at: "order_by", + fee: "order_by", + fromAta: "order_by", + hash: "order_by", + id: "order_by", + network: "order_by", + slot: "order_by", + status: "order_by", + time: "order_by", + toAta: "order_by", + token: "order_by", + updated_at: "order_by", + }, + token_txn_min_order_by: { + amount: "order_by", + blockHash: "order_by", + clientId: "order_by", + created_at: "order_by", + fee: "order_by", + fromAta: "order_by", + hash: "order_by", + id: "order_by", + network: "order_by", + slot: "order_by", + status: "order_by", + time: "order_by", + toAta: "order_by", + token: "order_by", + updated_at: "order_by", + }, + token_txn_on_conflict: { + constraint: "token_txn_constraint", + update_columns: "token_txn_update_column", + where: "token_txn_bool_exp", + }, + token_txn_order_by: { + amount: "order_by", + blockHash: "order_by", + clientId: "order_by", + created_at: "order_by", + fee: "order_by", + fromAta: "order_by", + hash: "order_by", + id: "order_by", + isMint: "order_by", + network: "order_by", + slot: "order_by", + status: "order_by", + time: "order_by", + toAta: "order_by", + token: "order_by", + token_txn_to_client: "client_order_by", + token_txn_to_token: "token_order_by", + txn_fromAta_to_ata: "ata_order_by", + txn_toAta_to_ata: "ata_order_by", + updated_at: "order_by", + }, + token_txn_pk_columns_input: { + id: "uuid", + }, + token_txn_select_column: "enum" as const, + token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns: + "enum" as const, + token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns: + "enum" as const, + token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns: + "enum" as const, + token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns: + "enum" as const, + token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns: + "enum" as const, + token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns: + "enum" as const, + token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns: + "enum" as const, + token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns: + "enum" as const, + token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns: + "enum" as const, + token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns: + "enum" as const, + token_txn_set_input: { + amount: "float8", + clientId: "uuid", + created_at: "timestamptz", + fee: "float8", + id: "uuid", + slot: "bigint", + time: "timestamptz", + updated_at: "timestamptz", + }, + token_txn_stddev_order_by: { + amount: "order_by", + fee: "order_by", + slot: "order_by", + }, + token_txn_stddev_pop_order_by: { + amount: "order_by", + fee: "order_by", + slot: "order_by", + }, + token_txn_stddev_samp_order_by: { + amount: "order_by", + fee: "order_by", + slot: "order_by", + }, + token_txn_stream_cursor_input: { + initial_value: "token_txn_stream_cursor_value_input", + ordering: "cursor_ordering", + }, + token_txn_stream_cursor_value_input: { + amount: "float8", + clientId: "uuid", + created_at: "timestamptz", + fee: "float8", + id: "uuid", + slot: "bigint", + time: "timestamptz", + updated_at: "timestamptz", + }, + token_txn_sum_order_by: { + amount: "order_by", + fee: "order_by", + slot: "order_by", + }, + token_txn_update_column: "enum" as const, + token_txn_updates: { + _inc: "token_txn_inc_input", + _set: "token_txn_set_input", + where: "token_txn_bool_exp", + }, + token_txn_var_pop_order_by: { + amount: "order_by", + fee: "order_by", + slot: "order_by", + }, + token_txn_var_samp_order_by: { + amount: "order_by", + fee: "order_by", + slot: "order_by", + }, + token_txn_variance_order_by: { + amount: "order_by", + fee: "order_by", + slot: "order_by", + }, token_update_column: "enum" as const, token_updates: { _set: "token_set_input", @@ -4072,6 +4497,10 @@ export const ReturnTypes: Record = { pubKey: "String", token: "String", tokenByToken: "token", + tokenTxnsByToata: "token_txn", + tokenTxnsByToata_aggregate: "token_txn_aggregate", + token_txns: "token_txn", + token_txns_aggregate: "token_txn_aggregate", updatedAt: "timestamptz", }, ata_aggregate: { @@ -4335,6 +4764,8 @@ export const ReturnTypes: Record = { notifications: "notification", notifications_aggregate: "notification_aggregate", password: "String", + token_txns: "token_txn", + token_txns_aggregate: "token_txn_aggregate", tokens: "token", tokens_aggregate: "token_aggregate", transactions: "transactions", @@ -4638,6 +5069,8 @@ export const ReturnTypes: Record = { delete_sol_by_pk: "sol", delete_token: "token_mutation_response", delete_token_by_pk: "token", + delete_token_txn: "token_txn_mutation_response", + delete_token_txn_by_pk: "token_txn", delete_transactions: "transactions_mutation_response", delete_transactions_by_pk: "transactions", delete_wallet: "wallet_mutation_response", @@ -4681,6 +5114,8 @@ export const ReturnTypes: Record = { insert_sol_one: "sol", insert_token: "token_mutation_response", insert_token_one: "token", + insert_token_txn: "token_txn_mutation_response", + insert_token_txn_one: "token_txn", insert_transactions: "transactions_mutation_response", insert_transactions_one: "transactions", insert_wallet: "wallet_mutation_response", @@ -4744,6 +5179,9 @@ export const ReturnTypes: Record = { update_token: "token_mutation_response", update_token_by_pk: "token", update_token_many: "token_mutation_response", + update_token_txn: "token_txn_mutation_response", + update_token_txn_by_pk: "token_txn", + update_token_txn_many: "token_txn_mutation_response", update_transactions: "transactions_mutation_response", update_transactions_by_pk: "transactions", update_transactions_many: "transactions_mutation_response", @@ -4969,6 +5407,9 @@ export const ReturnTypes: Record = { token: "token", token_aggregate: "token_aggregate", token_by_pk: "token", + token_txn: "token_txn", + token_txn_aggregate: "token_txn_aggregate", + token_txn_by_pk: "token_txn", transactions: "transactions", transactions_aggregate: "transactions_aggregate", transactions_by_pk: "transactions", @@ -5091,6 +5532,10 @@ export const ReturnTypes: Record = { token_aggregate: "token_aggregate", token_by_pk: "token", token_stream: "token", + token_txn: "token_txn", + token_txn_aggregate: "token_txn_aggregate", + token_txn_by_pk: "token_txn", + token_txn_stream: "token_txn", transactions: "transactions", transactions_aggregate: "transactions_aggregate", transactions_by_pk: "transactions", @@ -5115,6 +5560,8 @@ export const ReturnTypes: Record = { network: "String", privateKey: "String", pubKey: "String", + token_txns: "token_txn", + token_txns_aggregate: "token_txn_aggregate", updatedAt: "timestamptz", }, token_aggregate: { @@ -5154,6 +5601,123 @@ export const ReturnTypes: Record = { affected_rows: "Int", returning: "token", }, + token_txn: { + amount: "float8", + blockHash: "String", + clientId: "uuid", + created_at: "timestamptz", + fee: "float8", + fromAta: "String", + hash: "String", + id: "uuid", + isMint: "Boolean", + network: "String", + slot: "bigint", + status: "String", + time: "timestamptz", + toAta: "String", + token: "String", + token_txn_to_client: "client", + token_txn_to_token: "token", + txn_fromAta_to_ata: "ata", + txn_toAta_to_ata: "ata", + updated_at: "timestamptz", + }, + token_txn_aggregate: { + aggregate: "token_txn_aggregate_fields", + nodes: "token_txn", + }, + token_txn_aggregate_fields: { + avg: "token_txn_avg_fields", + count: "Int", + max: "token_txn_max_fields", + min: "token_txn_min_fields", + stddev: "token_txn_stddev_fields", + stddev_pop: "token_txn_stddev_pop_fields", + stddev_samp: "token_txn_stddev_samp_fields", + sum: "token_txn_sum_fields", + var_pop: "token_txn_var_pop_fields", + var_samp: "token_txn_var_samp_fields", + variance: "token_txn_variance_fields", + }, + token_txn_avg_fields: { + amount: "Float", + fee: "Float", + slot: "Float", + }, + token_txn_max_fields: { + amount: "float8", + blockHash: "String", + clientId: "uuid", + created_at: "timestamptz", + fee: "float8", + fromAta: "String", + hash: "String", + id: "uuid", + network: "String", + slot: "bigint", + status: "String", + time: "timestamptz", + toAta: "String", + token: "String", + updated_at: "timestamptz", + }, + token_txn_min_fields: { + amount: "float8", + blockHash: "String", + clientId: "uuid", + created_at: "timestamptz", + fee: "float8", + fromAta: "String", + hash: "String", + id: "uuid", + network: "String", + slot: "bigint", + status: "String", + time: "timestamptz", + toAta: "String", + token: "String", + updated_at: "timestamptz", + }, + token_txn_mutation_response: { + affected_rows: "Int", + returning: "token_txn", + }, + token_txn_stddev_fields: { + amount: "Float", + fee: "Float", + slot: "Float", + }, + token_txn_stddev_pop_fields: { + amount: "Float", + fee: "Float", + slot: "Float", + }, + token_txn_stddev_samp_fields: { + amount: "Float", + fee: "Float", + slot: "Float", + }, + token_txn_sum_fields: { + amount: "float8", + fee: "float8", + slot: "bigint", + }, + token_txn_var_pop_fields: { + amount: "Float", + fee: "Float", + slot: "Float", + }, + token_txn_var_samp_fields: { + amount: "Float", + fee: "Float", + slot: "Float", + }, + token_txn_variance_fields: { + amount: "Float", + fee: "Float", + slot: "Float", + }, transactions: { amount: "float8", blockHash: "String", diff --git a/backend/zeus/src/zeus/index.ts b/backend/zeus/src/zeus/index.ts index b260a864..6eed8cd2 100644 --- a/backend/zeus/src/zeus/index.ts +++ b/backend/zeus/src/zeus/index.ts @@ -2534,6 +2534,142 @@ export type ValueTypes = { token?: boolean | `@${string}`; /** An object relationship */ tokenByToken?: ValueTypes["token"]; + tokenTxnsByToata?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null + | Variable /** limit the number of rows returned */; + limit?: + | number + | undefined + | null + | Variable< + any, + string + > /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null + | Variable /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null + | Variable /** filter the rows returned */; + where?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn"], + ]; + tokenTxnsByToata_aggregate?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null + | Variable /** limit the number of rows returned */; + limit?: + | number + | undefined + | null + | Variable< + any, + string + > /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null + | Variable /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null + | Variable /** filter the rows returned */; + where?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn_aggregate"], + ]; + token_txns?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null + | Variable /** limit the number of rows returned */; + limit?: + | number + | undefined + | null + | Variable< + any, + string + > /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null + | Variable /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null + | Variable /** filter the rows returned */; + where?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn"], + ]; + token_txns_aggregate?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null + | Variable /** limit the number of rows returned */; + limit?: + | number + | undefined + | null + | Variable< + any, + string + > /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null + | Variable /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null + | Variable /** filter the rows returned */; + where?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn_aggregate"], + ]; updatedAt?: boolean | `@${string}`; __typename?: boolean | `@${string}`; }>; @@ -2701,6 +2837,26 @@ export type ValueTypes = { | undefined | null | Variable; + tokenTxnsByToata?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + tokenTxnsByToata_aggregate?: + | ValueTypes["token_txn_aggregate_bool_exp"] + | undefined + | null + | Variable; + token_txns?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + token_txns_aggregate?: + | ValueTypes["token_txn_aggregate_bool_exp"] + | undefined + | null + | Variable; updatedAt?: | ValueTypes["timestamptz_comparison_exp"] | undefined @@ -2732,6 +2888,16 @@ export type ValueTypes = { | undefined | null | Variable; + tokenTxnsByToata?: + | ValueTypes["token_txn_arr_rel_insert_input"] + | undefined + | null + | Variable; + token_txns?: + | ValueTypes["token_txn_arr_rel_insert_input"] + | undefined + | null + | Variable; updatedAt?: | ValueTypes["timestamptz"] | undefined @@ -2812,6 +2978,16 @@ export type ValueTypes = { returning?: ValueTypes["ata"]; __typename?: boolean | `@${string}`; }>; + /** input type for inserting object relation for remote table "ata" */ + ["ata_obj_rel_insert_input"]: { + data: ValueTypes["ata_insert_input"] | Variable; + /** upsert condition */ + on_conflict?: + | ValueTypes["ata_on_conflict"] + | undefined + | null + | Variable; + }; /** on_conflict condition type for table "ata" */ ["ata_on_conflict"]: { constraint: ValueTypes["ata_constraint"] | Variable; @@ -2855,6 +3031,16 @@ export type ValueTypes = { | undefined | null | Variable; + tokenTxnsByToata_aggregate?: + | ValueTypes["token_txn_aggregate_order_by"] + | undefined + | null + | Variable; + token_txns_aggregate?: + | ValueTypes["token_txn_aggregate_order_by"] + | undefined + | null + | Variable; updatedAt?: | ValueTypes["order_by"] | undefined @@ -5351,6 +5537,74 @@ export type ValueTypes = { ValueTypes["notification_aggregate"], ]; password?: boolean | `@${string}`; + token_txns?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null + | Variable /** limit the number of rows returned */; + limit?: + | number + | undefined + | null + | Variable< + any, + string + > /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null + | Variable /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null + | Variable /** filter the rows returned */; + where?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn"], + ]; + token_txns_aggregate?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null + | Variable /** limit the number of rows returned */; + limit?: + | number + | undefined + | null + | Variable< + any, + string + > /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null + | Variable /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null + | Variable /** filter the rows returned */; + where?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn_aggregate"], + ]; tokens?: [ { /** distinct select on columns */ @@ -5749,6 +6003,16 @@ export type ValueTypes = { | undefined | null | Variable; + token_txns?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + token_txns_aggregate?: + | ValueTypes["token_txn_aggregate_bool_exp"] + | undefined + | null + | Variable; tokens?: | ValueTypes["token_bool_exp"] | undefined @@ -5874,6 +6138,11 @@ export type ValueTypes = { | null | Variable; password?: string | undefined | null | Variable; + token_txns?: + | ValueTypes["token_txn_arr_rel_insert_input"] + | undefined + | null + | Variable; tokens?: | ValueTypes["token_arr_rel_insert_input"] | undefined @@ -6038,6 +6307,11 @@ export type ValueTypes = { | undefined | null | Variable; + token_txns_aggregate?: + | ValueTypes["token_txn_aggregate_order_by"] + | undefined + | null + | Variable; tokens_aggregate?: | ValueTypes["token_aggregate_order_by"] | undefined @@ -7846,6 +8120,17 @@ export type ValueTypes = { }, ValueTypes["token"], ]; + delete_token_txn?: [ + { + /** filter the rows which have to be deleted */ + where: ValueTypes["token_txn_bool_exp"] | Variable; + }, + ValueTypes["token_txn_mutation_response"], + ]; + delete_token_txn_by_pk?: [ + { id: ValueTypes["uuid"] | Variable }, + ValueTypes["token_txn"], + ]; delete_transactions?: [ { /** filter the rows which have to be deleted */ @@ -8400,6 +8685,34 @@ export type ValueTypes = { }, ValueTypes["token"], ]; + insert_token_txn?: [ + { + /** the rows to be inserted */ + objects: + | Array + | Variable /** upsert condition */; + on_conflict?: + | ValueTypes["token_txn_on_conflict"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn_mutation_response"], + ]; + insert_token_txn_one?: [ + { + /** the row to be inserted */ + object: + | ValueTypes["token_txn_insert_input"] + | Variable /** upsert condition */; + on_conflict?: + | ValueTypes["token_txn_on_conflict"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn"], + ]; insert_transactions?: [ { /** the rows to be inserted */ @@ -9184,6 +9497,58 @@ export type ValueTypes = { }, ValueTypes["token_mutation_response"], ]; + update_token_txn?: [ + { + /** increments the numeric columns with given value of the filtered values */ + _inc?: + | ValueTypes["token_txn_inc_input"] + | undefined + | null + | Variable< + any, + string + > /** sets the columns of the filtered rows to the given values */; + _set?: + | ValueTypes["token_txn_set_input"] + | undefined + | null + | Variable< + any, + string + > /** filter the rows which have to be updated */; + where: ValueTypes["token_txn_bool_exp"] | Variable; + }, + ValueTypes["token_txn_mutation_response"], + ]; + update_token_txn_by_pk?: [ + { + /** increments the numeric columns with given value of the filtered values */ + _inc?: + | ValueTypes["token_txn_inc_input"] + | undefined + | null + | Variable< + any, + string + > /** sets the columns of the filtered rows to the given values */; + _set?: + | ValueTypes["token_txn_set_input"] + | undefined + | null + | Variable; + pk_columns: + | ValueTypes["token_txn_pk_columns_input"] + | Variable; + }, + ValueTypes["token_txn"], + ]; + update_token_txn_many?: [ + { + /** updates to execute, in order */ + updates: Array | Variable; + }, + ValueTypes["token_txn_mutation_response"], + ]; update_transactions?: [ { /** increments the numeric columns with given value of the filtered values */ @@ -12200,6 +12565,78 @@ export type ValueTypes = { }, ValueTypes["token"], ]; + token_txn?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null + | Variable /** limit the number of rows returned */; + limit?: + | number + | undefined + | null + | Variable< + any, + string + > /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null + | Variable /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null + | Variable /** filter the rows returned */; + where?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn"], + ]; + token_txn_aggregate?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null + | Variable /** limit the number of rows returned */; + limit?: + | number + | undefined + | null + | Variable< + any, + string + > /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null + | Variable /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null + | Variable /** filter the rows returned */; + where?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn_aggregate"], + ]; + token_txn_by_pk?: [ + { id: ValueTypes["uuid"] | Variable }, + ValueTypes["token_txn"], + ]; transactions?: [ { /** distinct select on columns */ @@ -14393,6 +14830,100 @@ export type ValueTypes = { }, ValueTypes["token"], ]; + token_txn?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null + | Variable /** limit the number of rows returned */; + limit?: + | number + | undefined + | null + | Variable< + any, + string + > /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null + | Variable /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null + | Variable /** filter the rows returned */; + where?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn"], + ]; + token_txn_aggregate?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null + | Variable /** limit the number of rows returned */; + limit?: + | number + | undefined + | null + | Variable< + any, + string + > /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null + | Variable /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null + | Variable /** filter the rows returned */; + where?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn_aggregate"], + ]; + token_txn_by_pk?: [ + { id: ValueTypes["uuid"] | Variable }, + ValueTypes["token_txn"], + ]; + token_txn_stream?: [ + { + /** maximum number of rows returned in a single batch */ + batch_size: + | number + | Variable< + any, + string + > /** cursor to stream the results returned by the query */; + cursor: + | Array< + ValueTypes["token_txn_stream_cursor_input"] | undefined | null + > + | Variable /** filter the rows returned */; + where?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn"], + ]; transactions?: [ { /** distinct select on columns */ @@ -14704,6 +15235,74 @@ export type ValueTypes = { network?: boolean | `@${string}`; privateKey?: boolean | `@${string}`; pubKey?: boolean | `@${string}`; + token_txns?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null + | Variable /** limit the number of rows returned */; + limit?: + | number + | undefined + | null + | Variable< + any, + string + > /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null + | Variable /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null + | Variable /** filter the rows returned */; + where?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn"], + ]; + token_txns_aggregate?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null + | Variable /** limit the number of rows returned */; + limit?: + | number + | undefined + | null + | Variable< + any, + string + > /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null + | Variable /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null + | Variable /** filter the rows returned */; + where?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + }, + ValueTypes["token_txn_aggregate"], + ]; updatedAt?: boolean | `@${string}`; __typename?: boolean | `@${string}`; }>; @@ -14848,6 +15447,16 @@ export type ValueTypes = { | undefined | null | Variable; + token_txns?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + token_txns_aggregate?: + | ValueTypes["token_txn_aggregate_bool_exp"] + | undefined + | null + | Variable; updatedAt?: | ValueTypes["timestamptz_comparison_exp"] | undefined @@ -14881,6 +15490,11 @@ export type ValueTypes = { network?: string | undefined | null | Variable; privateKey?: string | undefined | null | Variable; pubKey?: string | undefined | null | Variable; + token_txns?: + | ValueTypes["token_txn_arr_rel_insert_input"] + | undefined + | null + | Variable; updatedAt?: | ValueTypes["timestamptz"] | undefined @@ -15060,6 +15674,11 @@ export type ValueTypes = { | null | Variable; pubKey?: ValueTypes["order_by"] | undefined | null | Variable; + token_txns_aggregate?: + | ValueTypes["token_txn_aggregate_order_by"] + | undefined + | null + | Variable; updatedAt?: | ValueTypes["order_by"] | undefined @@ -15128,6 +15747,905 @@ export type ValueTypes = { | null | Variable; }; + /** all the token transactions */ + ["token_txn"]: AliasType<{ + amount?: boolean | `@${string}`; + blockHash?: boolean | `@${string}`; + clientId?: boolean | `@${string}`; + created_at?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + fromAta?: boolean | `@${string}`; + hash?: boolean | `@${string}`; + id?: boolean | `@${string}`; + isMint?: boolean | `@${string}`; + network?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + status?: boolean | `@${string}`; + time?: boolean | `@${string}`; + toAta?: boolean | `@${string}`; + token?: boolean | `@${string}`; + /** An object relationship */ + token_txn_to_client?: ValueTypes["client"]; + /** An object relationship */ + token_txn_to_token?: ValueTypes["token"]; + /** An object relationship */ + txn_fromAta_to_ata?: ValueTypes["ata"]; + /** An object relationship */ + txn_toAta_to_ata?: ValueTypes["ata"]; + updated_at?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** aggregated selection of "token_txn" */ + ["token_txn_aggregate"]: AliasType<{ + aggregate?: ValueTypes["token_txn_aggregate_fields"]; + nodes?: ValueTypes["token_txn"]; + __typename?: boolean | `@${string}`; + }>; + ["token_txn_aggregate_bool_exp"]: { + avg?: + | ValueTypes["token_txn_aggregate_bool_exp_avg"] + | undefined + | null + | Variable; + bool_and?: + | ValueTypes["token_txn_aggregate_bool_exp_bool_and"] + | undefined + | null + | Variable; + bool_or?: + | ValueTypes["token_txn_aggregate_bool_exp_bool_or"] + | undefined + | null + | Variable; + corr?: + | ValueTypes["token_txn_aggregate_bool_exp_corr"] + | undefined + | null + | Variable; + count?: + | ValueTypes["token_txn_aggregate_bool_exp_count"] + | undefined + | null + | Variable; + covar_samp?: + | ValueTypes["token_txn_aggregate_bool_exp_covar_samp"] + | undefined + | null + | Variable; + max?: + | ValueTypes["token_txn_aggregate_bool_exp_max"] + | undefined + | null + | Variable; + min?: + | ValueTypes["token_txn_aggregate_bool_exp_min"] + | undefined + | null + | Variable; + stddev_samp?: + | ValueTypes["token_txn_aggregate_bool_exp_stddev_samp"] + | undefined + | null + | Variable; + sum?: + | ValueTypes["token_txn_aggregate_bool_exp_sum"] + | undefined + | null + | Variable; + var_samp?: + | ValueTypes["token_txn_aggregate_bool_exp_var_samp"] + | undefined + | null + | Variable; + }; + ["token_txn_aggregate_bool_exp_avg"]: { + arguments: + | ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns"] + | Variable; + distinct?: boolean | undefined | null | Variable; + filter?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + predicate: ValueTypes["float8_comparison_exp"] | Variable; + }; + ["token_txn_aggregate_bool_exp_bool_and"]: { + arguments: + | ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns"] + | Variable; + distinct?: boolean | undefined | null | Variable; + filter?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + predicate: ValueTypes["Boolean_comparison_exp"] | Variable; + }; + ["token_txn_aggregate_bool_exp_bool_or"]: { + arguments: + | ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns"] + | Variable; + distinct?: boolean | undefined | null | Variable; + filter?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + predicate: ValueTypes["Boolean_comparison_exp"] | Variable; + }; + ["token_txn_aggregate_bool_exp_corr"]: { + arguments: + | ValueTypes["token_txn_aggregate_bool_exp_corr_arguments"] + | Variable; + distinct?: boolean | undefined | null | Variable; + filter?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + predicate: ValueTypes["float8_comparison_exp"] | Variable; + }; + ["token_txn_aggregate_bool_exp_corr_arguments"]: { + X: + | ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns"] + | Variable; + Y: + | ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns"] + | Variable; + }; + ["token_txn_aggregate_bool_exp_count"]: { + arguments?: + | Array + | undefined + | null + | Variable; + distinct?: boolean | undefined | null | Variable; + filter?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + predicate: ValueTypes["Int_comparison_exp"] | Variable; + }; + ["token_txn_aggregate_bool_exp_covar_samp"]: { + arguments: + | ValueTypes["token_txn_aggregate_bool_exp_covar_samp_arguments"] + | Variable; + distinct?: boolean | undefined | null | Variable; + filter?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + predicate: ValueTypes["float8_comparison_exp"] | Variable; + }; + ["token_txn_aggregate_bool_exp_covar_samp_arguments"]: { + X: + | ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns"] + | Variable; + Y: + | ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns"] + | Variable; + }; + ["token_txn_aggregate_bool_exp_max"]: { + arguments: + | ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns"] + | Variable; + distinct?: boolean | undefined | null | Variable; + filter?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + predicate: ValueTypes["float8_comparison_exp"] | Variable; + }; + ["token_txn_aggregate_bool_exp_min"]: { + arguments: + | ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns"] + | Variable; + distinct?: boolean | undefined | null | Variable; + filter?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + predicate: ValueTypes["float8_comparison_exp"] | Variable; + }; + ["token_txn_aggregate_bool_exp_stddev_samp"]: { + arguments: + | ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns"] + | Variable; + distinct?: boolean | undefined | null | Variable; + filter?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + predicate: ValueTypes["float8_comparison_exp"] | Variable; + }; + ["token_txn_aggregate_bool_exp_sum"]: { + arguments: + | ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns"] + | Variable; + distinct?: boolean | undefined | null | Variable; + filter?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + predicate: ValueTypes["float8_comparison_exp"] | Variable; + }; + ["token_txn_aggregate_bool_exp_var_samp"]: { + arguments: + | ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns"] + | Variable; + distinct?: boolean | undefined | null | Variable; + filter?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + predicate: ValueTypes["float8_comparison_exp"] | Variable; + }; + /** aggregate fields of "token_txn" */ + ["token_txn_aggregate_fields"]: AliasType<{ + avg?: ValueTypes["token_txn_avg_fields"]; + count?: [ + { + columns?: + | Array + | undefined + | null + | Variable; + distinct?: boolean | undefined | null | Variable; + }, + boolean | `@${string}`, + ]; + max?: ValueTypes["token_txn_max_fields"]; + min?: ValueTypes["token_txn_min_fields"]; + stddev?: ValueTypes["token_txn_stddev_fields"]; + stddev_pop?: ValueTypes["token_txn_stddev_pop_fields"]; + stddev_samp?: ValueTypes["token_txn_stddev_samp_fields"]; + sum?: ValueTypes["token_txn_sum_fields"]; + var_pop?: ValueTypes["token_txn_var_pop_fields"]; + var_samp?: ValueTypes["token_txn_var_samp_fields"]; + variance?: ValueTypes["token_txn_variance_fields"]; + __typename?: boolean | `@${string}`; + }>; + /** order by aggregate values of table "token_txn" */ + ["token_txn_aggregate_order_by"]: { + avg?: + | ValueTypes["token_txn_avg_order_by"] + | undefined + | null + | Variable; + count?: ValueTypes["order_by"] | undefined | null | Variable; + max?: + | ValueTypes["token_txn_max_order_by"] + | undefined + | null + | Variable; + min?: + | ValueTypes["token_txn_min_order_by"] + | undefined + | null + | Variable; + stddev?: + | ValueTypes["token_txn_stddev_order_by"] + | undefined + | null + | Variable; + stddev_pop?: + | ValueTypes["token_txn_stddev_pop_order_by"] + | undefined + | null + | Variable; + stddev_samp?: + | ValueTypes["token_txn_stddev_samp_order_by"] + | undefined + | null + | Variable; + sum?: + | ValueTypes["token_txn_sum_order_by"] + | undefined + | null + | Variable; + var_pop?: + | ValueTypes["token_txn_var_pop_order_by"] + | undefined + | null + | Variable; + var_samp?: + | ValueTypes["token_txn_var_samp_order_by"] + | undefined + | null + | Variable; + variance?: + | ValueTypes["token_txn_variance_order_by"] + | undefined + | null + | Variable; + }; + /** input type for inserting array relation for remote table "token_txn" */ + ["token_txn_arr_rel_insert_input"]: { + data: Array | Variable; + /** upsert condition */ + on_conflict?: + | ValueTypes["token_txn_on_conflict"] + | undefined + | null + | Variable; + }; + /** aggregate avg on columns */ + ["token_txn_avg_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by avg() on columns of table "token_txn" */ + ["token_txn_avg_order_by"]: { + amount?: ValueTypes["order_by"] | undefined | null | Variable; + fee?: ValueTypes["order_by"] | undefined | null | Variable; + slot?: ValueTypes["order_by"] | undefined | null | Variable; + }; + /** Boolean expression to filter rows from the table "token_txn". All fields are combined with a logical 'AND'. */ + ["token_txn_bool_exp"]: { + _and?: + | Array + | undefined + | null + | Variable; + _not?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + _or?: + | Array + | undefined + | null + | Variable; + amount?: + | ValueTypes["float8_comparison_exp"] + | undefined + | null + | Variable; + blockHash?: + | ValueTypes["String_comparison_exp"] + | undefined + | null + | Variable; + clientId?: + | ValueTypes["uuid_comparison_exp"] + | undefined + | null + | Variable; + created_at?: + | ValueTypes["timestamptz_comparison_exp"] + | undefined + | null + | Variable; + fee?: + | ValueTypes["float8_comparison_exp"] + | undefined + | null + | Variable; + fromAta?: + | ValueTypes["String_comparison_exp"] + | undefined + | null + | Variable; + hash?: + | ValueTypes["String_comparison_exp"] + | undefined + | null + | Variable; + id?: + | ValueTypes["uuid_comparison_exp"] + | undefined + | null + | Variable; + isMint?: + | ValueTypes["Boolean_comparison_exp"] + | undefined + | null + | Variable; + network?: + | ValueTypes["String_comparison_exp"] + | undefined + | null + | Variable; + slot?: + | ValueTypes["bigint_comparison_exp"] + | undefined + | null + | Variable; + status?: + | ValueTypes["String_comparison_exp"] + | undefined + | null + | Variable; + time?: + | ValueTypes["timestamptz_comparison_exp"] + | undefined + | null + | Variable; + toAta?: + | ValueTypes["String_comparison_exp"] + | undefined + | null + | Variable; + token?: + | ValueTypes["String_comparison_exp"] + | undefined + | null + | Variable; + token_txn_to_client?: + | ValueTypes["client_bool_exp"] + | undefined + | null + | Variable; + token_txn_to_token?: + | ValueTypes["token_bool_exp"] + | undefined + | null + | Variable; + txn_fromAta_to_ata?: + | ValueTypes["ata_bool_exp"] + | undefined + | null + | Variable; + txn_toAta_to_ata?: + | ValueTypes["ata_bool_exp"] + | undefined + | null + | Variable; + updated_at?: + | ValueTypes["timestamptz_comparison_exp"] + | undefined + | null + | Variable; + }; + /** unique or primary key constraints on table "token_txn" */ + ["token_txn_constraint"]: token_txn_constraint; + /** input type for incrementing numeric columns in table "token_txn" */ + ["token_txn_inc_input"]: { + amount?: ValueTypes["float8"] | undefined | null | Variable; + fee?: ValueTypes["float8"] | undefined | null | Variable; + slot?: ValueTypes["bigint"] | undefined | null | Variable; + }; + /** input type for inserting data into table "token_txn" */ + ["token_txn_insert_input"]: { + amount?: ValueTypes["float8"] | undefined | null | Variable; + blockHash?: string | undefined | null | Variable; + clientId?: ValueTypes["uuid"] | undefined | null | Variable; + created_at?: + | ValueTypes["timestamptz"] + | undefined + | null + | Variable; + fee?: ValueTypes["float8"] | undefined | null | Variable; + fromAta?: string | undefined | null | Variable; + hash?: string | undefined | null | Variable; + id?: ValueTypes["uuid"] | undefined | null | Variable; + isMint?: boolean | undefined | null | Variable; + network?: string | undefined | null | Variable; + slot?: ValueTypes["bigint"] | undefined | null | Variable; + status?: string | undefined | null | Variable; + time?: ValueTypes["timestamptz"] | undefined | null | Variable; + toAta?: string | undefined | null | Variable; + token?: string | undefined | null | Variable; + token_txn_to_client?: + | ValueTypes["client_obj_rel_insert_input"] + | undefined + | null + | Variable; + token_txn_to_token?: + | ValueTypes["token_obj_rel_insert_input"] + | undefined + | null + | Variable; + txn_fromAta_to_ata?: + | ValueTypes["ata_obj_rel_insert_input"] + | undefined + | null + | Variable; + txn_toAta_to_ata?: + | ValueTypes["ata_obj_rel_insert_input"] + | undefined + | null + | Variable; + updated_at?: + | ValueTypes["timestamptz"] + | undefined + | null + | Variable; + }; + /** aggregate max on columns */ + ["token_txn_max_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + blockHash?: boolean | `@${string}`; + clientId?: boolean | `@${string}`; + created_at?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + fromAta?: boolean | `@${string}`; + hash?: boolean | `@${string}`; + id?: boolean | `@${string}`; + network?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + status?: boolean | `@${string}`; + time?: boolean | `@${string}`; + toAta?: boolean | `@${string}`; + token?: boolean | `@${string}`; + updated_at?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by max() on columns of table "token_txn" */ + ["token_txn_max_order_by"]: { + amount?: ValueTypes["order_by"] | undefined | null | Variable; + blockHash?: + | ValueTypes["order_by"] + | undefined + | null + | Variable; + clientId?: + | ValueTypes["order_by"] + | undefined + | null + | Variable; + created_at?: + | ValueTypes["order_by"] + | undefined + | null + | Variable; + fee?: ValueTypes["order_by"] | undefined | null | Variable; + fromAta?: ValueTypes["order_by"] | undefined | null | Variable; + hash?: ValueTypes["order_by"] | undefined | null | Variable; + id?: ValueTypes["order_by"] | undefined | null | Variable; + network?: ValueTypes["order_by"] | undefined | null | Variable; + slot?: ValueTypes["order_by"] | undefined | null | Variable; + status?: ValueTypes["order_by"] | undefined | null | Variable; + time?: ValueTypes["order_by"] | undefined | null | Variable; + toAta?: ValueTypes["order_by"] | undefined | null | Variable; + token?: ValueTypes["order_by"] | undefined | null | Variable; + updated_at?: + | ValueTypes["order_by"] + | undefined + | null + | Variable; + }; + /** aggregate min on columns */ + ["token_txn_min_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + blockHash?: boolean | `@${string}`; + clientId?: boolean | `@${string}`; + created_at?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + fromAta?: boolean | `@${string}`; + hash?: boolean | `@${string}`; + id?: boolean | `@${string}`; + network?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + status?: boolean | `@${string}`; + time?: boolean | `@${string}`; + toAta?: boolean | `@${string}`; + token?: boolean | `@${string}`; + updated_at?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by min() on columns of table "token_txn" */ + ["token_txn_min_order_by"]: { + amount?: ValueTypes["order_by"] | undefined | null | Variable; + blockHash?: + | ValueTypes["order_by"] + | undefined + | null + | Variable; + clientId?: + | ValueTypes["order_by"] + | undefined + | null + | Variable; + created_at?: + | ValueTypes["order_by"] + | undefined + | null + | Variable; + fee?: ValueTypes["order_by"] | undefined | null | Variable; + fromAta?: ValueTypes["order_by"] | undefined | null | Variable; + hash?: ValueTypes["order_by"] | undefined | null | Variable; + id?: ValueTypes["order_by"] | undefined | null | Variable; + network?: ValueTypes["order_by"] | undefined | null | Variable; + slot?: ValueTypes["order_by"] | undefined | null | Variable; + status?: ValueTypes["order_by"] | undefined | null | Variable; + time?: ValueTypes["order_by"] | undefined | null | Variable; + toAta?: ValueTypes["order_by"] | undefined | null | Variable; + token?: ValueTypes["order_by"] | undefined | null | Variable; + updated_at?: + | ValueTypes["order_by"] + | undefined + | null + | Variable; + }; + /** response of any mutation on the table "token_txn" */ + ["token_txn_mutation_response"]: AliasType<{ + /** number of rows affected by the mutation */ + affected_rows?: boolean | `@${string}`; + /** data from the rows affected by the mutation */ + returning?: ValueTypes["token_txn"]; + __typename?: boolean | `@${string}`; + }>; + /** on_conflict condition type for table "token_txn" */ + ["token_txn_on_conflict"]: { + constraint: ValueTypes["token_txn_constraint"] | Variable; + update_columns: + | Array + | Variable; + where?: + | ValueTypes["token_txn_bool_exp"] + | undefined + | null + | Variable; + }; + /** Ordering options when selecting data from "token_txn". */ + ["token_txn_order_by"]: { + amount?: ValueTypes["order_by"] | undefined | null | Variable; + blockHash?: + | ValueTypes["order_by"] + | undefined + | null + | Variable; + clientId?: + | ValueTypes["order_by"] + | undefined + | null + | Variable; + created_at?: + | ValueTypes["order_by"] + | undefined + | null + | Variable; + fee?: ValueTypes["order_by"] | undefined | null | Variable; + fromAta?: ValueTypes["order_by"] | undefined | null | Variable; + hash?: ValueTypes["order_by"] | undefined | null | Variable; + id?: ValueTypes["order_by"] | undefined | null | Variable; + isMint?: ValueTypes["order_by"] | undefined | null | Variable; + network?: ValueTypes["order_by"] | undefined | null | Variable; + slot?: ValueTypes["order_by"] | undefined | null | Variable; + status?: ValueTypes["order_by"] | undefined | null | Variable; + time?: ValueTypes["order_by"] | undefined | null | Variable; + toAta?: ValueTypes["order_by"] | undefined | null | Variable; + token?: ValueTypes["order_by"] | undefined | null | Variable; + token_txn_to_client?: + | ValueTypes["client_order_by"] + | undefined + | null + | Variable; + token_txn_to_token?: + | ValueTypes["token_order_by"] + | undefined + | null + | Variable; + txn_fromAta_to_ata?: + | ValueTypes["ata_order_by"] + | undefined + | null + | Variable; + txn_toAta_to_ata?: + | ValueTypes["ata_order_by"] + | undefined + | null + | Variable; + updated_at?: + | ValueTypes["order_by"] + | undefined + | null + | Variable; + }; + /** primary key columns input for table: token_txn */ + ["token_txn_pk_columns_input"]: { + id: ValueTypes["uuid"] | Variable; + }; + /** select columns of table "token_txn" */ + ["token_txn_select_column"]: token_txn_select_column; + /** select "token_txn_aggregate_bool_exp_avg_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns; + /** select "token_txn_aggregate_bool_exp_bool_and_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns; + /** select "token_txn_aggregate_bool_exp_bool_or_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns; + /** select "token_txn_aggregate_bool_exp_corr_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns; + /** select "token_txn_aggregate_bool_exp_covar_samp_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns; + /** select "token_txn_aggregate_bool_exp_max_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns; + /** select "token_txn_aggregate_bool_exp_min_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns; + /** select "token_txn_aggregate_bool_exp_stddev_samp_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns; + /** select "token_txn_aggregate_bool_exp_sum_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns; + /** select "token_txn_aggregate_bool_exp_var_samp_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns; + /** input type for updating data in table "token_txn" */ + ["token_txn_set_input"]: { + amount?: ValueTypes["float8"] | undefined | null | Variable; + blockHash?: string | undefined | null | Variable; + clientId?: ValueTypes["uuid"] | undefined | null | Variable; + created_at?: + | ValueTypes["timestamptz"] + | undefined + | null + | Variable; + fee?: ValueTypes["float8"] | undefined | null | Variable; + fromAta?: string | undefined | null | Variable; + hash?: string | undefined | null | Variable; + id?: ValueTypes["uuid"] | undefined | null | Variable; + isMint?: boolean | undefined | null | Variable; + network?: string | undefined | null | Variable; + slot?: ValueTypes["bigint"] | undefined | null | Variable; + status?: string | undefined | null | Variable; + time?: ValueTypes["timestamptz"] | undefined | null | Variable; + toAta?: string | undefined | null | Variable; + token?: string | undefined | null | Variable; + updated_at?: + | ValueTypes["timestamptz"] + | undefined + | null + | Variable; + }; + /** aggregate stddev on columns */ + ["token_txn_stddev_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by stddev() on columns of table "token_txn" */ + ["token_txn_stddev_order_by"]: { + amount?: ValueTypes["order_by"] | undefined | null | Variable; + fee?: ValueTypes["order_by"] | undefined | null | Variable; + slot?: ValueTypes["order_by"] | undefined | null | Variable; + }; + /** aggregate stddev_pop on columns */ + ["token_txn_stddev_pop_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by stddev_pop() on columns of table "token_txn" */ + ["token_txn_stddev_pop_order_by"]: { + amount?: ValueTypes["order_by"] | undefined | null | Variable; + fee?: ValueTypes["order_by"] | undefined | null | Variable; + slot?: ValueTypes["order_by"] | undefined | null | Variable; + }; + /** aggregate stddev_samp on columns */ + ["token_txn_stddev_samp_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by stddev_samp() on columns of table "token_txn" */ + ["token_txn_stddev_samp_order_by"]: { + amount?: ValueTypes["order_by"] | undefined | null | Variable; + fee?: ValueTypes["order_by"] | undefined | null | Variable; + slot?: ValueTypes["order_by"] | undefined | null | Variable; + }; + /** Streaming cursor of the table "token_txn" */ + ["token_txn_stream_cursor_input"]: { + /** Stream column input with initial value */ + initial_value: + | ValueTypes["token_txn_stream_cursor_value_input"] + | Variable; + /** cursor ordering */ + ordering?: + | ValueTypes["cursor_ordering"] + | undefined + | null + | Variable; + }; + /** Initial value of the column from where the streaming should start */ + ["token_txn_stream_cursor_value_input"]: { + amount?: ValueTypes["float8"] | undefined | null | Variable; + blockHash?: string | undefined | null | Variable; + clientId?: ValueTypes["uuid"] | undefined | null | Variable; + created_at?: + | ValueTypes["timestamptz"] + | undefined + | null + | Variable; + fee?: ValueTypes["float8"] | undefined | null | Variable; + fromAta?: string | undefined | null | Variable; + hash?: string | undefined | null | Variable; + id?: ValueTypes["uuid"] | undefined | null | Variable; + isMint?: boolean | undefined | null | Variable; + network?: string | undefined | null | Variable; + slot?: ValueTypes["bigint"] | undefined | null | Variable; + status?: string | undefined | null | Variable; + time?: ValueTypes["timestamptz"] | undefined | null | Variable; + toAta?: string | undefined | null | Variable; + token?: string | undefined | null | Variable; + updated_at?: + | ValueTypes["timestamptz"] + | undefined + | null + | Variable; + }; + /** aggregate sum on columns */ + ["token_txn_sum_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by sum() on columns of table "token_txn" */ + ["token_txn_sum_order_by"]: { + amount?: ValueTypes["order_by"] | undefined | null | Variable; + fee?: ValueTypes["order_by"] | undefined | null | Variable; + slot?: ValueTypes["order_by"] | undefined | null | Variable; + }; + /** update columns of table "token_txn" */ + ["token_txn_update_column"]: token_txn_update_column; + ["token_txn_updates"]: { + /** increments the numeric columns with given value of the filtered values */ + _inc?: + | ValueTypes["token_txn_inc_input"] + | undefined + | null + | Variable; + /** sets the columns of the filtered rows to the given values */ + _set?: + | ValueTypes["token_txn_set_input"] + | undefined + | null + | Variable; + /** filter the rows which have to be updated */ + where: ValueTypes["token_txn_bool_exp"] | Variable; + }; + /** aggregate var_pop on columns */ + ["token_txn_var_pop_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by var_pop() on columns of table "token_txn" */ + ["token_txn_var_pop_order_by"]: { + amount?: ValueTypes["order_by"] | undefined | null | Variable; + fee?: ValueTypes["order_by"] | undefined | null | Variable; + slot?: ValueTypes["order_by"] | undefined | null | Variable; + }; + /** aggregate var_samp on columns */ + ["token_txn_var_samp_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by var_samp() on columns of table "token_txn" */ + ["token_txn_var_samp_order_by"]: { + amount?: ValueTypes["order_by"] | undefined | null | Variable; + fee?: ValueTypes["order_by"] | undefined | null | Variable; + slot?: ValueTypes["order_by"] | undefined | null | Variable; + }; + /** aggregate variance on columns */ + ["token_txn_variance_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by variance() on columns of table "token_txn" */ + ["token_txn_variance_order_by"]: { + amount?: ValueTypes["order_by"] | undefined | null | Variable; + fee?: ValueTypes["order_by"] | undefined | null | Variable; + slot?: ValueTypes["order_by"] | undefined | null | Variable; + }; /** update columns of table "token" */ ["token_update_column"]: token_update_column; ["token_updates"]: { @@ -17419,6 +18937,98 @@ export type ResolverInputTypes = { token?: boolean | `@${string}`; /** An object relationship */ tokenByToken?: ResolverInputTypes["token"]; + tokenTxnsByToata?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null /** limit the number of rows returned */; + limit?: + | number + | undefined + | null /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null /** filter the rows returned */; + where?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + }, + ResolverInputTypes["token_txn"], + ]; + tokenTxnsByToata_aggregate?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null /** limit the number of rows returned */; + limit?: + | number + | undefined + | null /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null /** filter the rows returned */; + where?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + }, + ResolverInputTypes["token_txn_aggregate"], + ]; + token_txns?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null /** limit the number of rows returned */; + limit?: + | number + | undefined + | null /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null /** filter the rows returned */; + where?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + }, + ResolverInputTypes["token_txn"], + ]; + token_txns_aggregate?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null /** limit the number of rows returned */; + limit?: + | number + | undefined + | null /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null /** filter the rows returned */; + where?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + }, + ResolverInputTypes["token_txn_aggregate"], + ]; updatedAt?: boolean | `@${string}`; __typename?: boolean | `@${string}`; }>; @@ -17508,6 +19118,19 @@ export type ResolverInputTypes = { pubKey?: ResolverInputTypes["String_comparison_exp"] | undefined | null; token?: ResolverInputTypes["String_comparison_exp"] | undefined | null; tokenByToken?: ResolverInputTypes["token_bool_exp"] | undefined | null; + tokenTxnsByToata?: + | ResolverInputTypes["token_txn_bool_exp"] + | undefined + | null; + tokenTxnsByToata_aggregate?: + | ResolverInputTypes["token_txn_aggregate_bool_exp"] + | undefined + | null; + token_txns?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + token_txns_aggregate?: + | ResolverInputTypes["token_txn_aggregate_bool_exp"] + | undefined + | null; updatedAt?: | ResolverInputTypes["timestamptz_comparison_exp"] | undefined @@ -17532,6 +19155,14 @@ export type ResolverInputTypes = { | ResolverInputTypes["token_obj_rel_insert_input"] | undefined | null; + tokenTxnsByToata?: + | ResolverInputTypes["token_txn_arr_rel_insert_input"] + | undefined + | null; + token_txns?: + | ResolverInputTypes["token_txn_arr_rel_insert_input"] + | undefined + | null; updatedAt?: ResolverInputTypes["timestamptz"] | undefined | null; }; /** aggregate max on columns */ @@ -17584,6 +19215,12 @@ export type ResolverInputTypes = { returning?: ResolverInputTypes["ata"]; __typename?: boolean | `@${string}`; }>; + /** input type for inserting object relation for remote table "ata" */ + ["ata_obj_rel_insert_input"]: { + data: ResolverInputTypes["ata_insert_input"]; + /** upsert condition */ + on_conflict?: ResolverInputTypes["ata_on_conflict"] | undefined | null; + }; /** on_conflict condition type for table "ata" */ ["ata_on_conflict"]: { constraint: ResolverInputTypes["ata_constraint"]; @@ -17601,6 +19238,14 @@ export type ResolverInputTypes = { pubKey?: ResolverInputTypes["order_by"] | undefined | null; token?: ResolverInputTypes["order_by"] | undefined | null; tokenByToken?: ResolverInputTypes["token_order_by"] | undefined | null; + tokenTxnsByToata_aggregate?: + | ResolverInputTypes["token_txn_aggregate_order_by"] + | undefined + | null; + token_txns_aggregate?: + | ResolverInputTypes["token_txn_aggregate_order_by"] + | undefined + | null; updatedAt?: ResolverInputTypes["order_by"] | undefined | null; }; /** primary key columns input for table: ata */ @@ -19077,6 +20722,52 @@ export type ResolverInputTypes = { ResolverInputTypes["notification_aggregate"], ]; password?: boolean | `@${string}`; + token_txns?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null /** limit the number of rows returned */; + limit?: + | number + | undefined + | null /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null /** filter the rows returned */; + where?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + }, + ResolverInputTypes["token_txn"], + ]; + token_txns_aggregate?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null /** limit the number of rows returned */; + limit?: + | number + | undefined + | null /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null /** filter the rows returned */; + where?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + }, + ResolverInputTypes["token_txn_aggregate"], + ]; tokens?: [ { /** distinct select on columns */ @@ -19336,6 +21027,11 @@ export type ResolverInputTypes = { | undefined | null; password?: ResolverInputTypes["String_comparison_exp"] | undefined | null; + token_txns?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + token_txns_aggregate?: + | ResolverInputTypes["token_txn_aggregate_bool_exp"] + | undefined + | null; tokens?: ResolverInputTypes["token_bool_exp"] | undefined | null; tokens_aggregate?: | ResolverInputTypes["token_aggregate_bool_exp"] @@ -19418,6 +21114,10 @@ export type ResolverInputTypes = { | undefined | null; password?: string | undefined | null; + token_txns?: + | ResolverInputTypes["token_txn_arr_rel_insert_input"] + | undefined + | null; tokens?: | ResolverInputTypes["token_arr_rel_insert_input"] | undefined @@ -19531,6 +21231,10 @@ export type ResolverInputTypes = { | undefined | null; password?: ResolverInputTypes["order_by"] | undefined | null; + token_txns_aggregate?: + | ResolverInputTypes["token_txn_aggregate_order_by"] + | undefined + | null; tokens_aggregate?: | ResolverInputTypes["token_aggregate_order_by"] | undefined @@ -20725,6 +22429,17 @@ export type ResolverInputTypes = { { id: ResolverInputTypes["uuid"]; pubKey: string }, ResolverInputTypes["token"], ]; + delete_token_txn?: [ + { + /** filter the rows which have to be deleted */ + where: ResolverInputTypes["token_txn_bool_exp"]; + }, + ResolverInputTypes["token_txn_mutation_response"], + ]; + delete_token_txn_by_pk?: [ + { id: ResolverInputTypes["uuid"] }, + ResolverInputTypes["token_txn"], + ]; delete_transactions?: [ { /** filter the rows which have to be deleted */ @@ -21179,6 +22894,30 @@ export type ResolverInputTypes = { }, ResolverInputTypes["token"], ]; + insert_token_txn?: [ + { + /** the rows to be inserted */ + objects: Array< + ResolverInputTypes["token_txn_insert_input"] + > /** upsert condition */; + on_conflict?: + | ResolverInputTypes["token_txn_on_conflict"] + | undefined + | null; + }, + ResolverInputTypes["token_txn_mutation_response"], + ]; + insert_token_txn_one?: [ + { + /** the row to be inserted */ + object: ResolverInputTypes["token_txn_insert_input"] /** upsert condition */; + on_conflict?: + | ResolverInputTypes["token_txn_on_conflict"] + | undefined + | null; + }, + ResolverInputTypes["token_txn"], + ]; insert_transactions?: [ { /** the rows to be inserted */ @@ -21746,6 +23485,40 @@ export type ResolverInputTypes = { }, ResolverInputTypes["token_mutation_response"], ]; + update_token_txn?: [ + { + /** increments the numeric columns with given value of the filtered values */ + _inc?: + | ResolverInputTypes["token_txn_inc_input"] + | undefined + | null /** sets the columns of the filtered rows to the given values */; + _set?: + | ResolverInputTypes["token_txn_set_input"] + | undefined + | null /** filter the rows which have to be updated */; + where: ResolverInputTypes["token_txn_bool_exp"]; + }, + ResolverInputTypes["token_txn_mutation_response"], + ]; + update_token_txn_by_pk?: [ + { + /** increments the numeric columns with given value of the filtered values */ + _inc?: + | ResolverInputTypes["token_txn_inc_input"] + | undefined + | null /** sets the columns of the filtered rows to the given values */; + _set?: ResolverInputTypes["token_txn_set_input"] | undefined | null; + pk_columns: ResolverInputTypes["token_txn_pk_columns_input"]; + }, + ResolverInputTypes["token_txn"], + ]; + update_token_txn_many?: [ + { + /** updates to execute, in order */ + updates: Array; + }, + ResolverInputTypes["token_txn_mutation_response"], + ]; update_transactions?: [ { /** increments the numeric columns with given value of the filtered values */ @@ -23759,6 +25532,56 @@ export type ResolverInputTypes = { { id: ResolverInputTypes["uuid"]; pubKey: string }, ResolverInputTypes["token"], ]; + token_txn?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null /** limit the number of rows returned */; + limit?: + | number + | undefined + | null /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null /** filter the rows returned */; + where?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + }, + ResolverInputTypes["token_txn"], + ]; + token_txn_aggregate?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null /** limit the number of rows returned */; + limit?: + | number + | undefined + | null /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null /** filter the rows returned */; + where?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + }, + ResolverInputTypes["token_txn_aggregate"], + ]; + token_txn_by_pk?: [ + { id: ResolverInputTypes["uuid"] }, + ResolverInputTypes["token_txn"], + ]; transactions?: [ { /** distinct select on columns */ @@ -25218,6 +27041,67 @@ export type ResolverInputTypes = { }, ResolverInputTypes["token"], ]; + token_txn?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null /** limit the number of rows returned */; + limit?: + | number + | undefined + | null /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null /** filter the rows returned */; + where?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + }, + ResolverInputTypes["token_txn"], + ]; + token_txn_aggregate?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null /** limit the number of rows returned */; + limit?: + | number + | undefined + | null /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null /** filter the rows returned */; + where?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + }, + ResolverInputTypes["token_txn_aggregate"], + ]; + token_txn_by_pk?: [ + { id: ResolverInputTypes["uuid"] }, + ResolverInputTypes["token_txn"], + ]; + token_txn_stream?: [ + { + /** maximum number of rows returned in a single batch */ + batch_size: number /** cursor to stream the results returned by the query */; + cursor: Array< + ResolverInputTypes["token_txn_stream_cursor_input"] | undefined | null + > /** filter the rows returned */; + where?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + }, + ResolverInputTypes["token_txn"], + ]; transactions?: [ { /** distinct select on columns */ @@ -25429,6 +27313,52 @@ export type ResolverInputTypes = { network?: boolean | `@${string}`; privateKey?: boolean | `@${string}`; pubKey?: boolean | `@${string}`; + token_txns?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null /** limit the number of rows returned */; + limit?: + | number + | undefined + | null /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null /** filter the rows returned */; + where?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + }, + ResolverInputTypes["token_txn"], + ]; + token_txns_aggregate?: [ + { + /** distinct select on columns */ + distinct_on?: + | Array + | undefined + | null /** limit the number of rows returned */; + limit?: + | number + | undefined + | null /** skip the first n rows. Use only with order_by */; + offset?: + | number + | undefined + | null /** sort the rows by one or more columns */; + order_by?: + | Array + | undefined + | null /** filter the rows returned */; + where?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + }, + ResolverInputTypes["token_txn_aggregate"], + ]; updatedAt?: boolean | `@${string}`; __typename?: boolean | `@${string}`; }>; @@ -25507,6 +27437,11 @@ export type ResolverInputTypes = { network?: ResolverInputTypes["String_comparison_exp"] | undefined | null; privateKey?: ResolverInputTypes["String_comparison_exp"] | undefined | null; pubKey?: ResolverInputTypes["String_comparison_exp"] | undefined | null; + token_txns?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + token_txns_aggregate?: + | ResolverInputTypes["token_txn_aggregate_bool_exp"] + | undefined + | null; updatedAt?: | ResolverInputTypes["timestamptz_comparison_exp"] | undefined @@ -25530,6 +27465,10 @@ export type ResolverInputTypes = { network?: string | undefined | null; privateKey?: string | undefined | null; pubKey?: string | undefined | null; + token_txns?: + | ResolverInputTypes["token_txn_arr_rel_insert_input"] + | undefined + | null; updatedAt?: ResolverInputTypes["timestamptz"] | undefined | null; }; /** aggregate max on columns */ @@ -25622,6 +27561,10 @@ export type ResolverInputTypes = { network?: ResolverInputTypes["order_by"] | undefined | null; privateKey?: ResolverInputTypes["order_by"] | undefined | null; pubKey?: ResolverInputTypes["order_by"] | undefined | null; + token_txns_aggregate?: + | ResolverInputTypes["token_txn_aggregate_order_by"] + | undefined + | null; updatedAt?: ResolverInputTypes["order_by"] | undefined | null; }; /** primary key columns input for table: token */ @@ -25664,6 +27607,608 @@ export type ResolverInputTypes = { pubKey?: string | undefined | null; updatedAt?: ResolverInputTypes["timestamptz"] | undefined | null; }; + /** all the token transactions */ + ["token_txn"]: AliasType<{ + amount?: boolean | `@${string}`; + blockHash?: boolean | `@${string}`; + clientId?: boolean | `@${string}`; + created_at?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + fromAta?: boolean | `@${string}`; + hash?: boolean | `@${string}`; + id?: boolean | `@${string}`; + isMint?: boolean | `@${string}`; + network?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + status?: boolean | `@${string}`; + time?: boolean | `@${string}`; + toAta?: boolean | `@${string}`; + token?: boolean | `@${string}`; + /** An object relationship */ + token_txn_to_client?: ResolverInputTypes["client"]; + /** An object relationship */ + token_txn_to_token?: ResolverInputTypes["token"]; + /** An object relationship */ + txn_fromAta_to_ata?: ResolverInputTypes["ata"]; + /** An object relationship */ + txn_toAta_to_ata?: ResolverInputTypes["ata"]; + updated_at?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** aggregated selection of "token_txn" */ + ["token_txn_aggregate"]: AliasType<{ + aggregate?: ResolverInputTypes["token_txn_aggregate_fields"]; + nodes?: ResolverInputTypes["token_txn"]; + __typename?: boolean | `@${string}`; + }>; + ["token_txn_aggregate_bool_exp"]: { + avg?: + | ResolverInputTypes["token_txn_aggregate_bool_exp_avg"] + | undefined + | null; + bool_and?: + | ResolverInputTypes["token_txn_aggregate_bool_exp_bool_and"] + | undefined + | null; + bool_or?: + | ResolverInputTypes["token_txn_aggregate_bool_exp_bool_or"] + | undefined + | null; + corr?: + | ResolverInputTypes["token_txn_aggregate_bool_exp_corr"] + | undefined + | null; + count?: + | ResolverInputTypes["token_txn_aggregate_bool_exp_count"] + | undefined + | null; + covar_samp?: + | ResolverInputTypes["token_txn_aggregate_bool_exp_covar_samp"] + | undefined + | null; + max?: + | ResolverInputTypes["token_txn_aggregate_bool_exp_max"] + | undefined + | null; + min?: + | ResolverInputTypes["token_txn_aggregate_bool_exp_min"] + | undefined + | null; + stddev_samp?: + | ResolverInputTypes["token_txn_aggregate_bool_exp_stddev_samp"] + | undefined + | null; + sum?: + | ResolverInputTypes["token_txn_aggregate_bool_exp_sum"] + | undefined + | null; + var_samp?: + | ResolverInputTypes["token_txn_aggregate_bool_exp_var_samp"] + | undefined + | null; + }; + ["token_txn_aggregate_bool_exp_avg"]: { + arguments: ResolverInputTypes["token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns"]; + distinct?: boolean | undefined | null; + filter?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + predicate: ResolverInputTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_bool_and"]: { + arguments: ResolverInputTypes["token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns"]; + distinct?: boolean | undefined | null; + filter?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + predicate: ResolverInputTypes["Boolean_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_bool_or"]: { + arguments: ResolverInputTypes["token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns"]; + distinct?: boolean | undefined | null; + filter?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + predicate: ResolverInputTypes["Boolean_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_corr"]: { + arguments: ResolverInputTypes["token_txn_aggregate_bool_exp_corr_arguments"]; + distinct?: boolean | undefined | null; + filter?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + predicate: ResolverInputTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_corr_arguments"]: { + X: ResolverInputTypes["token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns"]; + Y: ResolverInputTypes["token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns"]; + }; + ["token_txn_aggregate_bool_exp_count"]: { + arguments?: + | Array + | undefined + | null; + distinct?: boolean | undefined | null; + filter?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + predicate: ResolverInputTypes["Int_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_covar_samp"]: { + arguments: ResolverInputTypes["token_txn_aggregate_bool_exp_covar_samp_arguments"]; + distinct?: boolean | undefined | null; + filter?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + predicate: ResolverInputTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_covar_samp_arguments"]: { + X: ResolverInputTypes["token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns"]; + Y: ResolverInputTypes["token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns"]; + }; + ["token_txn_aggregate_bool_exp_max"]: { + arguments: ResolverInputTypes["token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns"]; + distinct?: boolean | undefined | null; + filter?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + predicate: ResolverInputTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_min"]: { + arguments: ResolverInputTypes["token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns"]; + distinct?: boolean | undefined | null; + filter?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + predicate: ResolverInputTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_stddev_samp"]: { + arguments: ResolverInputTypes["token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns"]; + distinct?: boolean | undefined | null; + filter?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + predicate: ResolverInputTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_sum"]: { + arguments: ResolverInputTypes["token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns"]; + distinct?: boolean | undefined | null; + filter?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + predicate: ResolverInputTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_var_samp"]: { + arguments: ResolverInputTypes["token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns"]; + distinct?: boolean | undefined | null; + filter?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + predicate: ResolverInputTypes["float8_comparison_exp"]; + }; + /** aggregate fields of "token_txn" */ + ["token_txn_aggregate_fields"]: AliasType<{ + avg?: ResolverInputTypes["token_txn_avg_fields"]; + count?: [ + { + columns?: + | Array + | undefined + | null; + distinct?: boolean | undefined | null; + }, + boolean | `@${string}`, + ]; + max?: ResolverInputTypes["token_txn_max_fields"]; + min?: ResolverInputTypes["token_txn_min_fields"]; + stddev?: ResolverInputTypes["token_txn_stddev_fields"]; + stddev_pop?: ResolverInputTypes["token_txn_stddev_pop_fields"]; + stddev_samp?: ResolverInputTypes["token_txn_stddev_samp_fields"]; + sum?: ResolverInputTypes["token_txn_sum_fields"]; + var_pop?: ResolverInputTypes["token_txn_var_pop_fields"]; + var_samp?: ResolverInputTypes["token_txn_var_samp_fields"]; + variance?: ResolverInputTypes["token_txn_variance_fields"]; + __typename?: boolean | `@${string}`; + }>; + /** order by aggregate values of table "token_txn" */ + ["token_txn_aggregate_order_by"]: { + avg?: ResolverInputTypes["token_txn_avg_order_by"] | undefined | null; + count?: ResolverInputTypes["order_by"] | undefined | null; + max?: ResolverInputTypes["token_txn_max_order_by"] | undefined | null; + min?: ResolverInputTypes["token_txn_min_order_by"] | undefined | null; + stddev?: ResolverInputTypes["token_txn_stddev_order_by"] | undefined | null; + stddev_pop?: + | ResolverInputTypes["token_txn_stddev_pop_order_by"] + | undefined + | null; + stddev_samp?: + | ResolverInputTypes["token_txn_stddev_samp_order_by"] + | undefined + | null; + sum?: ResolverInputTypes["token_txn_sum_order_by"] | undefined | null; + var_pop?: + | ResolverInputTypes["token_txn_var_pop_order_by"] + | undefined + | null; + var_samp?: + | ResolverInputTypes["token_txn_var_samp_order_by"] + | undefined + | null; + variance?: + | ResolverInputTypes["token_txn_variance_order_by"] + | undefined + | null; + }; + /** input type for inserting array relation for remote table "token_txn" */ + ["token_txn_arr_rel_insert_input"]: { + data: Array; + /** upsert condition */ + on_conflict?: + | ResolverInputTypes["token_txn_on_conflict"] + | undefined + | null; + }; + /** aggregate avg on columns */ + ["token_txn_avg_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by avg() on columns of table "token_txn" */ + ["token_txn_avg_order_by"]: { + amount?: ResolverInputTypes["order_by"] | undefined | null; + fee?: ResolverInputTypes["order_by"] | undefined | null; + slot?: ResolverInputTypes["order_by"] | undefined | null; + }; + /** Boolean expression to filter rows from the table "token_txn". All fields are combined with a logical 'AND'. */ + ["token_txn_bool_exp"]: { + _and?: Array | undefined | null; + _not?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + _or?: Array | undefined | null; + amount?: ResolverInputTypes["float8_comparison_exp"] | undefined | null; + blockHash?: ResolverInputTypes["String_comparison_exp"] | undefined | null; + clientId?: ResolverInputTypes["uuid_comparison_exp"] | undefined | null; + created_at?: + | ResolverInputTypes["timestamptz_comparison_exp"] + | undefined + | null; + fee?: ResolverInputTypes["float8_comparison_exp"] | undefined | null; + fromAta?: ResolverInputTypes["String_comparison_exp"] | undefined | null; + hash?: ResolverInputTypes["String_comparison_exp"] | undefined | null; + id?: ResolverInputTypes["uuid_comparison_exp"] | undefined | null; + isMint?: ResolverInputTypes["Boolean_comparison_exp"] | undefined | null; + network?: ResolverInputTypes["String_comparison_exp"] | undefined | null; + slot?: ResolverInputTypes["bigint_comparison_exp"] | undefined | null; + status?: ResolverInputTypes["String_comparison_exp"] | undefined | null; + time?: ResolverInputTypes["timestamptz_comparison_exp"] | undefined | null; + toAta?: ResolverInputTypes["String_comparison_exp"] | undefined | null; + token?: ResolverInputTypes["String_comparison_exp"] | undefined | null; + token_txn_to_client?: + | ResolverInputTypes["client_bool_exp"] + | undefined + | null; + token_txn_to_token?: + | ResolverInputTypes["token_bool_exp"] + | undefined + | null; + txn_fromAta_to_ata?: ResolverInputTypes["ata_bool_exp"] | undefined | null; + txn_toAta_to_ata?: ResolverInputTypes["ata_bool_exp"] | undefined | null; + updated_at?: + | ResolverInputTypes["timestamptz_comparison_exp"] + | undefined + | null; + }; + /** unique or primary key constraints on table "token_txn" */ + ["token_txn_constraint"]: token_txn_constraint; + /** input type for incrementing numeric columns in table "token_txn" */ + ["token_txn_inc_input"]: { + amount?: ResolverInputTypes["float8"] | undefined | null; + fee?: ResolverInputTypes["float8"] | undefined | null; + slot?: ResolverInputTypes["bigint"] | undefined | null; + }; + /** input type for inserting data into table "token_txn" */ + ["token_txn_insert_input"]: { + amount?: ResolverInputTypes["float8"] | undefined | null; + blockHash?: string | undefined | null; + clientId?: ResolverInputTypes["uuid"] | undefined | null; + created_at?: ResolverInputTypes["timestamptz"] | undefined | null; + fee?: ResolverInputTypes["float8"] | undefined | null; + fromAta?: string | undefined | null; + hash?: string | undefined | null; + id?: ResolverInputTypes["uuid"] | undefined | null; + isMint?: boolean | undefined | null; + network?: string | undefined | null; + slot?: ResolverInputTypes["bigint"] | undefined | null; + status?: string | undefined | null; + time?: ResolverInputTypes["timestamptz"] | undefined | null; + toAta?: string | undefined | null; + token?: string | undefined | null; + token_txn_to_client?: + | ResolverInputTypes["client_obj_rel_insert_input"] + | undefined + | null; + token_txn_to_token?: + | ResolverInputTypes["token_obj_rel_insert_input"] + | undefined + | null; + txn_fromAta_to_ata?: + | ResolverInputTypes["ata_obj_rel_insert_input"] + | undefined + | null; + txn_toAta_to_ata?: + | ResolverInputTypes["ata_obj_rel_insert_input"] + | undefined + | null; + updated_at?: ResolverInputTypes["timestamptz"] | undefined | null; + }; + /** aggregate max on columns */ + ["token_txn_max_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + blockHash?: boolean | `@${string}`; + clientId?: boolean | `@${string}`; + created_at?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + fromAta?: boolean | `@${string}`; + hash?: boolean | `@${string}`; + id?: boolean | `@${string}`; + network?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + status?: boolean | `@${string}`; + time?: boolean | `@${string}`; + toAta?: boolean | `@${string}`; + token?: boolean | `@${string}`; + updated_at?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by max() on columns of table "token_txn" */ + ["token_txn_max_order_by"]: { + amount?: ResolverInputTypes["order_by"] | undefined | null; + blockHash?: ResolverInputTypes["order_by"] | undefined | null; + clientId?: ResolverInputTypes["order_by"] | undefined | null; + created_at?: ResolverInputTypes["order_by"] | undefined | null; + fee?: ResolverInputTypes["order_by"] | undefined | null; + fromAta?: ResolverInputTypes["order_by"] | undefined | null; + hash?: ResolverInputTypes["order_by"] | undefined | null; + id?: ResolverInputTypes["order_by"] | undefined | null; + network?: ResolverInputTypes["order_by"] | undefined | null; + slot?: ResolverInputTypes["order_by"] | undefined | null; + status?: ResolverInputTypes["order_by"] | undefined | null; + time?: ResolverInputTypes["order_by"] | undefined | null; + toAta?: ResolverInputTypes["order_by"] | undefined | null; + token?: ResolverInputTypes["order_by"] | undefined | null; + updated_at?: ResolverInputTypes["order_by"] | undefined | null; + }; + /** aggregate min on columns */ + ["token_txn_min_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + blockHash?: boolean | `@${string}`; + clientId?: boolean | `@${string}`; + created_at?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + fromAta?: boolean | `@${string}`; + hash?: boolean | `@${string}`; + id?: boolean | `@${string}`; + network?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + status?: boolean | `@${string}`; + time?: boolean | `@${string}`; + toAta?: boolean | `@${string}`; + token?: boolean | `@${string}`; + updated_at?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by min() on columns of table "token_txn" */ + ["token_txn_min_order_by"]: { + amount?: ResolverInputTypes["order_by"] | undefined | null; + blockHash?: ResolverInputTypes["order_by"] | undefined | null; + clientId?: ResolverInputTypes["order_by"] | undefined | null; + created_at?: ResolverInputTypes["order_by"] | undefined | null; + fee?: ResolverInputTypes["order_by"] | undefined | null; + fromAta?: ResolverInputTypes["order_by"] | undefined | null; + hash?: ResolverInputTypes["order_by"] | undefined | null; + id?: ResolverInputTypes["order_by"] | undefined | null; + network?: ResolverInputTypes["order_by"] | undefined | null; + slot?: ResolverInputTypes["order_by"] | undefined | null; + status?: ResolverInputTypes["order_by"] | undefined | null; + time?: ResolverInputTypes["order_by"] | undefined | null; + toAta?: ResolverInputTypes["order_by"] | undefined | null; + token?: ResolverInputTypes["order_by"] | undefined | null; + updated_at?: ResolverInputTypes["order_by"] | undefined | null; + }; + /** response of any mutation on the table "token_txn" */ + ["token_txn_mutation_response"]: AliasType<{ + /** number of rows affected by the mutation */ + affected_rows?: boolean | `@${string}`; + /** data from the rows affected by the mutation */ + returning?: ResolverInputTypes["token_txn"]; + __typename?: boolean | `@${string}`; + }>; + /** on_conflict condition type for table "token_txn" */ + ["token_txn_on_conflict"]: { + constraint: ResolverInputTypes["token_txn_constraint"]; + update_columns: Array; + where?: ResolverInputTypes["token_txn_bool_exp"] | undefined | null; + }; + /** Ordering options when selecting data from "token_txn". */ + ["token_txn_order_by"]: { + amount?: ResolverInputTypes["order_by"] | undefined | null; + blockHash?: ResolverInputTypes["order_by"] | undefined | null; + clientId?: ResolverInputTypes["order_by"] | undefined | null; + created_at?: ResolverInputTypes["order_by"] | undefined | null; + fee?: ResolverInputTypes["order_by"] | undefined | null; + fromAta?: ResolverInputTypes["order_by"] | undefined | null; + hash?: ResolverInputTypes["order_by"] | undefined | null; + id?: ResolverInputTypes["order_by"] | undefined | null; + isMint?: ResolverInputTypes["order_by"] | undefined | null; + network?: ResolverInputTypes["order_by"] | undefined | null; + slot?: ResolverInputTypes["order_by"] | undefined | null; + status?: ResolverInputTypes["order_by"] | undefined | null; + time?: ResolverInputTypes["order_by"] | undefined | null; + toAta?: ResolverInputTypes["order_by"] | undefined | null; + token?: ResolverInputTypes["order_by"] | undefined | null; + token_txn_to_client?: + | ResolverInputTypes["client_order_by"] + | undefined + | null; + token_txn_to_token?: + | ResolverInputTypes["token_order_by"] + | undefined + | null; + txn_fromAta_to_ata?: ResolverInputTypes["ata_order_by"] | undefined | null; + txn_toAta_to_ata?: ResolverInputTypes["ata_order_by"] | undefined | null; + updated_at?: ResolverInputTypes["order_by"] | undefined | null; + }; + /** primary key columns input for table: token_txn */ + ["token_txn_pk_columns_input"]: { + id: ResolverInputTypes["uuid"]; + }; + /** select columns of table "token_txn" */ + ["token_txn_select_column"]: token_txn_select_column; + /** select "token_txn_aggregate_bool_exp_avg_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns; + /** select "token_txn_aggregate_bool_exp_bool_and_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns; + /** select "token_txn_aggregate_bool_exp_bool_or_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns; + /** select "token_txn_aggregate_bool_exp_corr_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns; + /** select "token_txn_aggregate_bool_exp_covar_samp_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns; + /** select "token_txn_aggregate_bool_exp_max_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns; + /** select "token_txn_aggregate_bool_exp_min_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns; + /** select "token_txn_aggregate_bool_exp_stddev_samp_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns; + /** select "token_txn_aggregate_bool_exp_sum_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns; + /** select "token_txn_aggregate_bool_exp_var_samp_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns; + /** input type for updating data in table "token_txn" */ + ["token_txn_set_input"]: { + amount?: ResolverInputTypes["float8"] | undefined | null; + blockHash?: string | undefined | null; + clientId?: ResolverInputTypes["uuid"] | undefined | null; + created_at?: ResolverInputTypes["timestamptz"] | undefined | null; + fee?: ResolverInputTypes["float8"] | undefined | null; + fromAta?: string | undefined | null; + hash?: string | undefined | null; + id?: ResolverInputTypes["uuid"] | undefined | null; + isMint?: boolean | undefined | null; + network?: string | undefined | null; + slot?: ResolverInputTypes["bigint"] | undefined | null; + status?: string | undefined | null; + time?: ResolverInputTypes["timestamptz"] | undefined | null; + toAta?: string | undefined | null; + token?: string | undefined | null; + updated_at?: ResolverInputTypes["timestamptz"] | undefined | null; + }; + /** aggregate stddev on columns */ + ["token_txn_stddev_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by stddev() on columns of table "token_txn" */ + ["token_txn_stddev_order_by"]: { + amount?: ResolverInputTypes["order_by"] | undefined | null; + fee?: ResolverInputTypes["order_by"] | undefined | null; + slot?: ResolverInputTypes["order_by"] | undefined | null; + }; + /** aggregate stddev_pop on columns */ + ["token_txn_stddev_pop_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by stddev_pop() on columns of table "token_txn" */ + ["token_txn_stddev_pop_order_by"]: { + amount?: ResolverInputTypes["order_by"] | undefined | null; + fee?: ResolverInputTypes["order_by"] | undefined | null; + slot?: ResolverInputTypes["order_by"] | undefined | null; + }; + /** aggregate stddev_samp on columns */ + ["token_txn_stddev_samp_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by stddev_samp() on columns of table "token_txn" */ + ["token_txn_stddev_samp_order_by"]: { + amount?: ResolverInputTypes["order_by"] | undefined | null; + fee?: ResolverInputTypes["order_by"] | undefined | null; + slot?: ResolverInputTypes["order_by"] | undefined | null; + }; + /** Streaming cursor of the table "token_txn" */ + ["token_txn_stream_cursor_input"]: { + /** Stream column input with initial value */ + initial_value: ResolverInputTypes["token_txn_stream_cursor_value_input"]; + /** cursor ordering */ + ordering?: ResolverInputTypes["cursor_ordering"] | undefined | null; + }; + /** Initial value of the column from where the streaming should start */ + ["token_txn_stream_cursor_value_input"]: { + amount?: ResolverInputTypes["float8"] | undefined | null; + blockHash?: string | undefined | null; + clientId?: ResolverInputTypes["uuid"] | undefined | null; + created_at?: ResolverInputTypes["timestamptz"] | undefined | null; + fee?: ResolverInputTypes["float8"] | undefined | null; + fromAta?: string | undefined | null; + hash?: string | undefined | null; + id?: ResolverInputTypes["uuid"] | undefined | null; + isMint?: boolean | undefined | null; + network?: string | undefined | null; + slot?: ResolverInputTypes["bigint"] | undefined | null; + status?: string | undefined | null; + time?: ResolverInputTypes["timestamptz"] | undefined | null; + toAta?: string | undefined | null; + token?: string | undefined | null; + updated_at?: ResolverInputTypes["timestamptz"] | undefined | null; + }; + /** aggregate sum on columns */ + ["token_txn_sum_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by sum() on columns of table "token_txn" */ + ["token_txn_sum_order_by"]: { + amount?: ResolverInputTypes["order_by"] | undefined | null; + fee?: ResolverInputTypes["order_by"] | undefined | null; + slot?: ResolverInputTypes["order_by"] | undefined | null; + }; + /** update columns of table "token_txn" */ + ["token_txn_update_column"]: token_txn_update_column; + ["token_txn_updates"]: { + /** increments the numeric columns with given value of the filtered values */ + _inc?: ResolverInputTypes["token_txn_inc_input"] | undefined | null; + /** sets the columns of the filtered rows to the given values */ + _set?: ResolverInputTypes["token_txn_set_input"] | undefined | null; + /** filter the rows which have to be updated */ + where: ResolverInputTypes["token_txn_bool_exp"]; + }; + /** aggregate var_pop on columns */ + ["token_txn_var_pop_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by var_pop() on columns of table "token_txn" */ + ["token_txn_var_pop_order_by"]: { + amount?: ResolverInputTypes["order_by"] | undefined | null; + fee?: ResolverInputTypes["order_by"] | undefined | null; + slot?: ResolverInputTypes["order_by"] | undefined | null; + }; + /** aggregate var_samp on columns */ + ["token_txn_var_samp_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by var_samp() on columns of table "token_txn" */ + ["token_txn_var_samp_order_by"]: { + amount?: ResolverInputTypes["order_by"] | undefined | null; + fee?: ResolverInputTypes["order_by"] | undefined | null; + slot?: ResolverInputTypes["order_by"] | undefined | null; + }; + /** aggregate variance on columns */ + ["token_txn_variance_fields"]: AliasType<{ + amount?: boolean | `@${string}`; + fee?: boolean | `@${string}`; + slot?: boolean | `@${string}`; + __typename?: boolean | `@${string}`; + }>; + /** order by variance() on columns of table "token_txn" */ + ["token_txn_variance_order_by"]: { + amount?: ResolverInputTypes["order_by"] | undefined | null; + fee?: ResolverInputTypes["order_by"] | undefined | null; + slot?: ResolverInputTypes["order_by"] | undefined | null; + }; /** update columns of table "token" */ ["token_update_column"]: token_update_column; ["token_updates"]: { @@ -27307,6 +29852,14 @@ export type ModelTypes = { token: string; /** An object relationship */ tokenByToken: ModelTypes["token"]; + /** An array relationship */ + tokenTxnsByToata: Array; + /** An aggregate relationship */ + tokenTxnsByToata_aggregate: ModelTypes["token_txn_aggregate"]; + /** An array relationship */ + token_txns: Array; + /** An aggregate relationship */ + token_txns_aggregate: ModelTypes["token_txn_aggregate"]; updatedAt: ModelTypes["timestamptz"]; }; /** aggregated selection of "ata" */ @@ -27369,6 +29922,14 @@ export type ModelTypes = { pubKey?: ModelTypes["String_comparison_exp"] | undefined; token?: ModelTypes["String_comparison_exp"] | undefined; tokenByToken?: ModelTypes["token_bool_exp"] | undefined; + tokenTxnsByToata?: ModelTypes["token_txn_bool_exp"] | undefined; + tokenTxnsByToata_aggregate?: + | ModelTypes["token_txn_aggregate_bool_exp"] + | undefined; + token_txns?: ModelTypes["token_txn_bool_exp"] | undefined; + token_txns_aggregate?: + | ModelTypes["token_txn_aggregate_bool_exp"] + | undefined; updatedAt?: ModelTypes["timestamptz_comparison_exp"] | undefined; }; ["ata_constraint"]: ata_constraint; @@ -27383,6 +29944,8 @@ export type ModelTypes = { pubKey?: string | undefined; token?: string | undefined; tokenByToken?: ModelTypes["token_obj_rel_insert_input"] | undefined; + tokenTxnsByToata?: ModelTypes["token_txn_arr_rel_insert_input"] | undefined; + token_txns?: ModelTypes["token_txn_arr_rel_insert_input"] | undefined; updatedAt?: ModelTypes["timestamptz"] | undefined; }; /** aggregate max on columns */ @@ -27432,6 +29995,12 @@ export type ModelTypes = { /** data from the rows affected by the mutation */ returning: Array; }; + /** input type for inserting object relation for remote table "ata" */ + ["ata_obj_rel_insert_input"]: { + data: ModelTypes["ata_insert_input"]; + /** upsert condition */ + on_conflict?: ModelTypes["ata_on_conflict"] | undefined; + }; /** on_conflict condition type for table "ata" */ ["ata_on_conflict"]: { constraint: ModelTypes["ata_constraint"]; @@ -27449,6 +30018,12 @@ export type ModelTypes = { pubKey?: ModelTypes["order_by"] | undefined; token?: ModelTypes["order_by"] | undefined; tokenByToken?: ModelTypes["token_order_by"] | undefined; + tokenTxnsByToata_aggregate?: + | ModelTypes["token_txn_aggregate_order_by"] + | undefined; + token_txns_aggregate?: + | ModelTypes["token_txn_aggregate_order_by"] + | undefined; updatedAt?: ModelTypes["order_by"] | undefined; }; /** primary key columns input for table: ata */ @@ -28347,6 +30922,10 @@ export type ModelTypes = { notifications_aggregate: ModelTypes["notification_aggregate"]; password: string; /** An array relationship */ + token_txns: Array; + /** An aggregate relationship */ + token_txns_aggregate: ModelTypes["token_txn_aggregate"]; + /** An array relationship */ tokens: Array; /** An aggregate relationship */ tokens_aggregate: ModelTypes["token_aggregate"]; @@ -28432,6 +31011,10 @@ export type ModelTypes = { | ModelTypes["notification_aggregate_bool_exp"] | undefined; password?: ModelTypes["String_comparison_exp"] | undefined; + token_txns?: ModelTypes["token_txn_bool_exp"] | undefined; + token_txns_aggregate?: + | ModelTypes["token_txn_aggregate_bool_exp"] + | undefined; tokens?: ModelTypes["token_bool_exp"] | undefined; tokens_aggregate?: ModelTypes["token_aggregate_bool_exp"] | undefined; transactions?: ModelTypes["transactions_bool_exp"] | undefined; @@ -28478,6 +31061,7 @@ export type ModelTypes = { | undefined; notifications?: ModelTypes["notification_arr_rel_insert_input"] | undefined; password?: string | undefined; + token_txns?: ModelTypes["token_txn_arr_rel_insert_input"] | undefined; tokens?: ModelTypes["token_arr_rel_insert_input"] | undefined; transactions?: ModelTypes["transactions_arr_rel_insert_input"] | undefined; updatedAt?: ModelTypes["timestamptz"] | undefined; @@ -28561,6 +31145,9 @@ export type ModelTypes = { | ModelTypes["notification_aggregate_order_by"] | undefined; password?: ModelTypes["order_by"] | undefined; + token_txns_aggregate?: + | ModelTypes["token_txn_aggregate_order_by"] + | undefined; tokens_aggregate?: ModelTypes["token_aggregate_order_by"] | undefined; transactions_aggregate?: | ModelTypes["transactions_aggregate_order_by"] @@ -29417,6 +32004,10 @@ export type ModelTypes = { delete_token?: ModelTypes["token_mutation_response"] | undefined; /** delete single row from the table: "token" */ delete_token_by_pk?: ModelTypes["token"] | undefined; + /** delete data from the table: "token_txn" */ + delete_token_txn?: ModelTypes["token_txn_mutation_response"] | undefined; + /** delete single row from the table: "token_txn" */ + delete_token_txn_by_pk?: ModelTypes["token_txn"] | undefined; /** delete data from the table: "transactions" */ delete_transactions?: | ModelTypes["transactions_mutation_response"] @@ -29521,6 +32112,10 @@ export type ModelTypes = { insert_token?: ModelTypes["token_mutation_response"] | undefined; /** insert a single row into the table: "token" */ insert_token_one?: ModelTypes["token"] | undefined; + /** insert data into the table: "token_txn" */ + insert_token_txn?: ModelTypes["token_txn_mutation_response"] | undefined; + /** insert a single row into the table: "token_txn" */ + insert_token_txn_one?: ModelTypes["token_txn"] | undefined; /** insert data into the table: "transactions" */ insert_transactions?: | ModelTypes["transactions_mutation_response"] @@ -29703,6 +32298,14 @@ export type ModelTypes = { update_token_many?: | Array | undefined; + /** update data of the table: "token_txn" */ + update_token_txn?: ModelTypes["token_txn_mutation_response"] | undefined; + /** update single row of the table: "token_txn" */ + update_token_txn_by_pk?: ModelTypes["token_txn"] | undefined; + /** update multiples rows of table: "token_txn" */ + update_token_txn_many?: + | Array + | undefined; /** update data of the table: "transactions" */ update_transactions?: | ModelTypes["transactions_mutation_response"] @@ -30550,6 +33153,12 @@ export type ModelTypes = { token_aggregate: ModelTypes["token_aggregate"]; /** fetch data from the table: "token" using primary key columns */ token_by_pk?: ModelTypes["token"] | undefined; + /** fetch data from the table: "token_txn" */ + token_txn: Array; + /** fetch aggregated fields from the table: "token_txn" */ + token_txn_aggregate: ModelTypes["token_txn_aggregate"]; + /** fetch data from the table: "token_txn" using primary key columns */ + token_txn_by_pk?: ModelTypes["token_txn"] | undefined; /** An array relationship */ transactions: Array; /** An aggregate relationship */ @@ -30850,6 +33459,14 @@ export type ModelTypes = { token_by_pk?: ModelTypes["token"] | undefined; /** fetch data from the table in a streaming manner: "token" */ token_stream: Array; + /** fetch data from the table: "token_txn" */ + token_txn: Array; + /** fetch aggregated fields from the table: "token_txn" */ + token_txn_aggregate: ModelTypes["token_txn_aggregate"]; + /** fetch data from the table: "token_txn" using primary key columns */ + token_txn_by_pk?: ModelTypes["token_txn"] | undefined; + /** fetch data from the table in a streaming manner: "token_txn" */ + token_txn_stream: Array; /** An array relationship */ transactions: Array; /** An aggregate relationship */ @@ -30910,6 +33527,10 @@ export type ModelTypes = { network: string; privateKey: string; pubKey: string; + /** An array relationship */ + token_txns: Array; + /** An aggregate relationship */ + token_txns_aggregate: ModelTypes["token_txn_aggregate"]; updatedAt: ModelTypes["timestamptz"]; }; /** aggregated selection of "token" */ @@ -30961,6 +33582,10 @@ export type ModelTypes = { network?: ModelTypes["String_comparison_exp"] | undefined; privateKey?: ModelTypes["String_comparison_exp"] | undefined; pubKey?: ModelTypes["String_comparison_exp"] | undefined; + token_txns?: ModelTypes["token_txn_bool_exp"] | undefined; + token_txns_aggregate?: + | ModelTypes["token_txn_aggregate_bool_exp"] + | undefined; updatedAt?: ModelTypes["timestamptz_comparison_exp"] | undefined; }; ["token_constraint"]: token_constraint; @@ -30977,6 +33602,7 @@ export type ModelTypes = { network?: string | undefined; privateKey?: string | undefined; pubKey?: string | undefined; + token_txns?: ModelTypes["token_txn_arr_rel_insert_input"] | undefined; updatedAt?: ModelTypes["timestamptz"] | undefined; }; /** aggregate max on columns */ @@ -31063,6 +33689,9 @@ export type ModelTypes = { network?: ModelTypes["order_by"] | undefined; privateKey?: ModelTypes["order_by"] | undefined; pubKey?: ModelTypes["order_by"] | undefined; + token_txns_aggregate?: + | ModelTypes["token_txn_aggregate_order_by"] + | undefined; updatedAt?: ModelTypes["order_by"] | undefined; }; /** primary key columns input for table: token */ @@ -31104,6 +33733,492 @@ export type ModelTypes = { pubKey?: string | undefined; updatedAt?: ModelTypes["timestamptz"] | undefined; }; + /** all the token transactions */ + ["token_txn"]: { + amount: ModelTypes["float8"]; + blockHash: string; + clientId: ModelTypes["uuid"]; + created_at: ModelTypes["timestamptz"]; + fee: ModelTypes["float8"]; + fromAta: string; + hash: string; + id: ModelTypes["uuid"]; + isMint: boolean; + network: string; + slot: ModelTypes["bigint"]; + status: string; + time: ModelTypes["timestamptz"]; + toAta: string; + token: string; + /** An object relationship */ + token_txn_to_client: ModelTypes["client"]; + /** An object relationship */ + token_txn_to_token: ModelTypes["token"]; + /** An object relationship */ + txn_fromAta_to_ata: ModelTypes["ata"]; + /** An object relationship */ + txn_toAta_to_ata: ModelTypes["ata"]; + updated_at: ModelTypes["timestamptz"]; + }; + /** aggregated selection of "token_txn" */ + ["token_txn_aggregate"]: { + aggregate?: ModelTypes["token_txn_aggregate_fields"] | undefined; + nodes: Array; + }; + ["token_txn_aggregate_bool_exp"]: { + avg?: ModelTypes["token_txn_aggregate_bool_exp_avg"] | undefined; + bool_and?: ModelTypes["token_txn_aggregate_bool_exp_bool_and"] | undefined; + bool_or?: ModelTypes["token_txn_aggregate_bool_exp_bool_or"] | undefined; + corr?: ModelTypes["token_txn_aggregate_bool_exp_corr"] | undefined; + count?: ModelTypes["token_txn_aggregate_bool_exp_count"] | undefined; + covar_samp?: + | ModelTypes["token_txn_aggregate_bool_exp_covar_samp"] + | undefined; + max?: ModelTypes["token_txn_aggregate_bool_exp_max"] | undefined; + min?: ModelTypes["token_txn_aggregate_bool_exp_min"] | undefined; + stddev_samp?: + | ModelTypes["token_txn_aggregate_bool_exp_stddev_samp"] + | undefined; + sum?: ModelTypes["token_txn_aggregate_bool_exp_sum"] | undefined; + var_samp?: ModelTypes["token_txn_aggregate_bool_exp_var_samp"] | undefined; + }; + ["token_txn_aggregate_bool_exp_avg"]: { + arguments: ModelTypes["token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns"]; + distinct?: boolean | undefined; + filter?: ModelTypes["token_txn_bool_exp"] | undefined; + predicate: ModelTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_bool_and"]: { + arguments: ModelTypes["token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns"]; + distinct?: boolean | undefined; + filter?: ModelTypes["token_txn_bool_exp"] | undefined; + predicate: ModelTypes["Boolean_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_bool_or"]: { + arguments: ModelTypes["token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns"]; + distinct?: boolean | undefined; + filter?: ModelTypes["token_txn_bool_exp"] | undefined; + predicate: ModelTypes["Boolean_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_corr"]: { + arguments: ModelTypes["token_txn_aggregate_bool_exp_corr_arguments"]; + distinct?: boolean | undefined; + filter?: ModelTypes["token_txn_bool_exp"] | undefined; + predicate: ModelTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_corr_arguments"]: { + X: ModelTypes["token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns"]; + Y: ModelTypes["token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns"]; + }; + ["token_txn_aggregate_bool_exp_count"]: { + arguments?: Array | undefined; + distinct?: boolean | undefined; + filter?: ModelTypes["token_txn_bool_exp"] | undefined; + predicate: ModelTypes["Int_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_covar_samp"]: { + arguments: ModelTypes["token_txn_aggregate_bool_exp_covar_samp_arguments"]; + distinct?: boolean | undefined; + filter?: ModelTypes["token_txn_bool_exp"] | undefined; + predicate: ModelTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_covar_samp_arguments"]: { + X: ModelTypes["token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns"]; + Y: ModelTypes["token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns"]; + }; + ["token_txn_aggregate_bool_exp_max"]: { + arguments: ModelTypes["token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns"]; + distinct?: boolean | undefined; + filter?: ModelTypes["token_txn_bool_exp"] | undefined; + predicate: ModelTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_min"]: { + arguments: ModelTypes["token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns"]; + distinct?: boolean | undefined; + filter?: ModelTypes["token_txn_bool_exp"] | undefined; + predicate: ModelTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_stddev_samp"]: { + arguments: ModelTypes["token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns"]; + distinct?: boolean | undefined; + filter?: ModelTypes["token_txn_bool_exp"] | undefined; + predicate: ModelTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_sum"]: { + arguments: ModelTypes["token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns"]; + distinct?: boolean | undefined; + filter?: ModelTypes["token_txn_bool_exp"] | undefined; + predicate: ModelTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_var_samp"]: { + arguments: ModelTypes["token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns"]; + distinct?: boolean | undefined; + filter?: ModelTypes["token_txn_bool_exp"] | undefined; + predicate: ModelTypes["float8_comparison_exp"]; + }; + /** aggregate fields of "token_txn" */ + ["token_txn_aggregate_fields"]: { + avg?: ModelTypes["token_txn_avg_fields"] | undefined; + count: number; + max?: ModelTypes["token_txn_max_fields"] | undefined; + min?: ModelTypes["token_txn_min_fields"] | undefined; + stddev?: ModelTypes["token_txn_stddev_fields"] | undefined; + stddev_pop?: ModelTypes["token_txn_stddev_pop_fields"] | undefined; + stddev_samp?: ModelTypes["token_txn_stddev_samp_fields"] | undefined; + sum?: ModelTypes["token_txn_sum_fields"] | undefined; + var_pop?: ModelTypes["token_txn_var_pop_fields"] | undefined; + var_samp?: ModelTypes["token_txn_var_samp_fields"] | undefined; + variance?: ModelTypes["token_txn_variance_fields"] | undefined; + }; + /** order by aggregate values of table "token_txn" */ + ["token_txn_aggregate_order_by"]: { + avg?: ModelTypes["token_txn_avg_order_by"] | undefined; + count?: ModelTypes["order_by"] | undefined; + max?: ModelTypes["token_txn_max_order_by"] | undefined; + min?: ModelTypes["token_txn_min_order_by"] | undefined; + stddev?: ModelTypes["token_txn_stddev_order_by"] | undefined; + stddev_pop?: ModelTypes["token_txn_stddev_pop_order_by"] | undefined; + stddev_samp?: ModelTypes["token_txn_stddev_samp_order_by"] | undefined; + sum?: ModelTypes["token_txn_sum_order_by"] | undefined; + var_pop?: ModelTypes["token_txn_var_pop_order_by"] | undefined; + var_samp?: ModelTypes["token_txn_var_samp_order_by"] | undefined; + variance?: ModelTypes["token_txn_variance_order_by"] | undefined; + }; + /** input type for inserting array relation for remote table "token_txn" */ + ["token_txn_arr_rel_insert_input"]: { + data: Array; + /** upsert condition */ + on_conflict?: ModelTypes["token_txn_on_conflict"] | undefined; + }; + /** aggregate avg on columns */ + ["token_txn_avg_fields"]: { + amount?: number | undefined; + fee?: number | undefined; + slot?: number | undefined; + }; + /** order by avg() on columns of table "token_txn" */ + ["token_txn_avg_order_by"]: { + amount?: ModelTypes["order_by"] | undefined; + fee?: ModelTypes["order_by"] | undefined; + slot?: ModelTypes["order_by"] | undefined; + }; + /** Boolean expression to filter rows from the table "token_txn". All fields are combined with a logical 'AND'. */ + ["token_txn_bool_exp"]: { + _and?: Array | undefined; + _not?: ModelTypes["token_txn_bool_exp"] | undefined; + _or?: Array | undefined; + amount?: ModelTypes["float8_comparison_exp"] | undefined; + blockHash?: ModelTypes["String_comparison_exp"] | undefined; + clientId?: ModelTypes["uuid_comparison_exp"] | undefined; + created_at?: ModelTypes["timestamptz_comparison_exp"] | undefined; + fee?: ModelTypes["float8_comparison_exp"] | undefined; + fromAta?: ModelTypes["String_comparison_exp"] | undefined; + hash?: ModelTypes["String_comparison_exp"] | undefined; + id?: ModelTypes["uuid_comparison_exp"] | undefined; + isMint?: ModelTypes["Boolean_comparison_exp"] | undefined; + network?: ModelTypes["String_comparison_exp"] | undefined; + slot?: ModelTypes["bigint_comparison_exp"] | undefined; + status?: ModelTypes["String_comparison_exp"] | undefined; + time?: ModelTypes["timestamptz_comparison_exp"] | undefined; + toAta?: ModelTypes["String_comparison_exp"] | undefined; + token?: ModelTypes["String_comparison_exp"] | undefined; + token_txn_to_client?: ModelTypes["client_bool_exp"] | undefined; + token_txn_to_token?: ModelTypes["token_bool_exp"] | undefined; + txn_fromAta_to_ata?: ModelTypes["ata_bool_exp"] | undefined; + txn_toAta_to_ata?: ModelTypes["ata_bool_exp"] | undefined; + updated_at?: ModelTypes["timestamptz_comparison_exp"] | undefined; + }; + ["token_txn_constraint"]: token_txn_constraint; + /** input type for incrementing numeric columns in table "token_txn" */ + ["token_txn_inc_input"]: { + amount?: ModelTypes["float8"] | undefined; + fee?: ModelTypes["float8"] | undefined; + slot?: ModelTypes["bigint"] | undefined; + }; + /** input type for inserting data into table "token_txn" */ + ["token_txn_insert_input"]: { + amount?: ModelTypes["float8"] | undefined; + blockHash?: string | undefined; + clientId?: ModelTypes["uuid"] | undefined; + created_at?: ModelTypes["timestamptz"] | undefined; + fee?: ModelTypes["float8"] | undefined; + fromAta?: string | undefined; + hash?: string | undefined; + id?: ModelTypes["uuid"] | undefined; + isMint?: boolean | undefined; + network?: string | undefined; + slot?: ModelTypes["bigint"] | undefined; + status?: string | undefined; + time?: ModelTypes["timestamptz"] | undefined; + toAta?: string | undefined; + token?: string | undefined; + token_txn_to_client?: ModelTypes["client_obj_rel_insert_input"] | undefined; + token_txn_to_token?: ModelTypes["token_obj_rel_insert_input"] | undefined; + txn_fromAta_to_ata?: ModelTypes["ata_obj_rel_insert_input"] | undefined; + txn_toAta_to_ata?: ModelTypes["ata_obj_rel_insert_input"] | undefined; + updated_at?: ModelTypes["timestamptz"] | undefined; + }; + /** aggregate max on columns */ + ["token_txn_max_fields"]: { + amount?: ModelTypes["float8"] | undefined; + blockHash?: string | undefined; + clientId?: ModelTypes["uuid"] | undefined; + created_at?: ModelTypes["timestamptz"] | undefined; + fee?: ModelTypes["float8"] | undefined; + fromAta?: string | undefined; + hash?: string | undefined; + id?: ModelTypes["uuid"] | undefined; + network?: string | undefined; + slot?: ModelTypes["bigint"] | undefined; + status?: string | undefined; + time?: ModelTypes["timestamptz"] | undefined; + toAta?: string | undefined; + token?: string | undefined; + updated_at?: ModelTypes["timestamptz"] | undefined; + }; + /** order by max() on columns of table "token_txn" */ + ["token_txn_max_order_by"]: { + amount?: ModelTypes["order_by"] | undefined; + blockHash?: ModelTypes["order_by"] | undefined; + clientId?: ModelTypes["order_by"] | undefined; + created_at?: ModelTypes["order_by"] | undefined; + fee?: ModelTypes["order_by"] | undefined; + fromAta?: ModelTypes["order_by"] | undefined; + hash?: ModelTypes["order_by"] | undefined; + id?: ModelTypes["order_by"] | undefined; + network?: ModelTypes["order_by"] | undefined; + slot?: ModelTypes["order_by"] | undefined; + status?: ModelTypes["order_by"] | undefined; + time?: ModelTypes["order_by"] | undefined; + toAta?: ModelTypes["order_by"] | undefined; + token?: ModelTypes["order_by"] | undefined; + updated_at?: ModelTypes["order_by"] | undefined; + }; + /** aggregate min on columns */ + ["token_txn_min_fields"]: { + amount?: ModelTypes["float8"] | undefined; + blockHash?: string | undefined; + clientId?: ModelTypes["uuid"] | undefined; + created_at?: ModelTypes["timestamptz"] | undefined; + fee?: ModelTypes["float8"] | undefined; + fromAta?: string | undefined; + hash?: string | undefined; + id?: ModelTypes["uuid"] | undefined; + network?: string | undefined; + slot?: ModelTypes["bigint"] | undefined; + status?: string | undefined; + time?: ModelTypes["timestamptz"] | undefined; + toAta?: string | undefined; + token?: string | undefined; + updated_at?: ModelTypes["timestamptz"] | undefined; + }; + /** order by min() on columns of table "token_txn" */ + ["token_txn_min_order_by"]: { + amount?: ModelTypes["order_by"] | undefined; + blockHash?: ModelTypes["order_by"] | undefined; + clientId?: ModelTypes["order_by"] | undefined; + created_at?: ModelTypes["order_by"] | undefined; + fee?: ModelTypes["order_by"] | undefined; + fromAta?: ModelTypes["order_by"] | undefined; + hash?: ModelTypes["order_by"] | undefined; + id?: ModelTypes["order_by"] | undefined; + network?: ModelTypes["order_by"] | undefined; + slot?: ModelTypes["order_by"] | undefined; + status?: ModelTypes["order_by"] | undefined; + time?: ModelTypes["order_by"] | undefined; + toAta?: ModelTypes["order_by"] | undefined; + token?: ModelTypes["order_by"] | undefined; + updated_at?: ModelTypes["order_by"] | undefined; + }; + /** response of any mutation on the table "token_txn" */ + ["token_txn_mutation_response"]: { + /** number of rows affected by the mutation */ + affected_rows: number; + /** data from the rows affected by the mutation */ + returning: Array; + }; + /** on_conflict condition type for table "token_txn" */ + ["token_txn_on_conflict"]: { + constraint: ModelTypes["token_txn_constraint"]; + update_columns: Array; + where?: ModelTypes["token_txn_bool_exp"] | undefined; + }; + /** Ordering options when selecting data from "token_txn". */ + ["token_txn_order_by"]: { + amount?: ModelTypes["order_by"] | undefined; + blockHash?: ModelTypes["order_by"] | undefined; + clientId?: ModelTypes["order_by"] | undefined; + created_at?: ModelTypes["order_by"] | undefined; + fee?: ModelTypes["order_by"] | undefined; + fromAta?: ModelTypes["order_by"] | undefined; + hash?: ModelTypes["order_by"] | undefined; + id?: ModelTypes["order_by"] | undefined; + isMint?: ModelTypes["order_by"] | undefined; + network?: ModelTypes["order_by"] | undefined; + slot?: ModelTypes["order_by"] | undefined; + status?: ModelTypes["order_by"] | undefined; + time?: ModelTypes["order_by"] | undefined; + toAta?: ModelTypes["order_by"] | undefined; + token?: ModelTypes["order_by"] | undefined; + token_txn_to_client?: ModelTypes["client_order_by"] | undefined; + token_txn_to_token?: ModelTypes["token_order_by"] | undefined; + txn_fromAta_to_ata?: ModelTypes["ata_order_by"] | undefined; + txn_toAta_to_ata?: ModelTypes["ata_order_by"] | undefined; + updated_at?: ModelTypes["order_by"] | undefined; + }; + /** primary key columns input for table: token_txn */ + ["token_txn_pk_columns_input"]: { + id: ModelTypes["uuid"]; + }; + ["token_txn_select_column"]: token_txn_select_column; + ["token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns; + ["token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns; + ["token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns; + ["token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns; + ["token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns; + ["token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns; + ["token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns; + ["token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns; + ["token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns; + ["token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns; + /** input type for updating data in table "token_txn" */ + ["token_txn_set_input"]: { + amount?: ModelTypes["float8"] | undefined; + blockHash?: string | undefined; + clientId?: ModelTypes["uuid"] | undefined; + created_at?: ModelTypes["timestamptz"] | undefined; + fee?: ModelTypes["float8"] | undefined; + fromAta?: string | undefined; + hash?: string | undefined; + id?: ModelTypes["uuid"] | undefined; + isMint?: boolean | undefined; + network?: string | undefined; + slot?: ModelTypes["bigint"] | undefined; + status?: string | undefined; + time?: ModelTypes["timestamptz"] | undefined; + toAta?: string | undefined; + token?: string | undefined; + updated_at?: ModelTypes["timestamptz"] | undefined; + }; + /** aggregate stddev on columns */ + ["token_txn_stddev_fields"]: { + amount?: number | undefined; + fee?: number | undefined; + slot?: number | undefined; + }; + /** order by stddev() on columns of table "token_txn" */ + ["token_txn_stddev_order_by"]: { + amount?: ModelTypes["order_by"] | undefined; + fee?: ModelTypes["order_by"] | undefined; + slot?: ModelTypes["order_by"] | undefined; + }; + /** aggregate stddev_pop on columns */ + ["token_txn_stddev_pop_fields"]: { + amount?: number | undefined; + fee?: number | undefined; + slot?: number | undefined; + }; + /** order by stddev_pop() on columns of table "token_txn" */ + ["token_txn_stddev_pop_order_by"]: { + amount?: ModelTypes["order_by"] | undefined; + fee?: ModelTypes["order_by"] | undefined; + slot?: ModelTypes["order_by"] | undefined; + }; + /** aggregate stddev_samp on columns */ + ["token_txn_stddev_samp_fields"]: { + amount?: number | undefined; + fee?: number | undefined; + slot?: number | undefined; + }; + /** order by stddev_samp() on columns of table "token_txn" */ + ["token_txn_stddev_samp_order_by"]: { + amount?: ModelTypes["order_by"] | undefined; + fee?: ModelTypes["order_by"] | undefined; + slot?: ModelTypes["order_by"] | undefined; + }; + /** Streaming cursor of the table "token_txn" */ + ["token_txn_stream_cursor_input"]: { + /** Stream column input with initial value */ + initial_value: ModelTypes["token_txn_stream_cursor_value_input"]; + /** cursor ordering */ + ordering?: ModelTypes["cursor_ordering"] | undefined; + }; + /** Initial value of the column from where the streaming should start */ + ["token_txn_stream_cursor_value_input"]: { + amount?: ModelTypes["float8"] | undefined; + blockHash?: string | undefined; + clientId?: ModelTypes["uuid"] | undefined; + created_at?: ModelTypes["timestamptz"] | undefined; + fee?: ModelTypes["float8"] | undefined; + fromAta?: string | undefined; + hash?: string | undefined; + id?: ModelTypes["uuid"] | undefined; + isMint?: boolean | undefined; + network?: string | undefined; + slot?: ModelTypes["bigint"] | undefined; + status?: string | undefined; + time?: ModelTypes["timestamptz"] | undefined; + toAta?: string | undefined; + token?: string | undefined; + updated_at?: ModelTypes["timestamptz"] | undefined; + }; + /** aggregate sum on columns */ + ["token_txn_sum_fields"]: { + amount?: ModelTypes["float8"] | undefined; + fee?: ModelTypes["float8"] | undefined; + slot?: ModelTypes["bigint"] | undefined; + }; + /** order by sum() on columns of table "token_txn" */ + ["token_txn_sum_order_by"]: { + amount?: ModelTypes["order_by"] | undefined; + fee?: ModelTypes["order_by"] | undefined; + slot?: ModelTypes["order_by"] | undefined; + }; + ["token_txn_update_column"]: token_txn_update_column; + ["token_txn_updates"]: { + /** increments the numeric columns with given value of the filtered values */ + _inc?: ModelTypes["token_txn_inc_input"] | undefined; + /** sets the columns of the filtered rows to the given values */ + _set?: ModelTypes["token_txn_set_input"] | undefined; + /** filter the rows which have to be updated */ + where: ModelTypes["token_txn_bool_exp"]; + }; + /** aggregate var_pop on columns */ + ["token_txn_var_pop_fields"]: { + amount?: number | undefined; + fee?: number | undefined; + slot?: number | undefined; + }; + /** order by var_pop() on columns of table "token_txn" */ + ["token_txn_var_pop_order_by"]: { + amount?: ModelTypes["order_by"] | undefined; + fee?: ModelTypes["order_by"] | undefined; + slot?: ModelTypes["order_by"] | undefined; + }; + /** aggregate var_samp on columns */ + ["token_txn_var_samp_fields"]: { + amount?: number | undefined; + fee?: number | undefined; + slot?: number | undefined; + }; + /** order by var_samp() on columns of table "token_txn" */ + ["token_txn_var_samp_order_by"]: { + amount?: ModelTypes["order_by"] | undefined; + fee?: ModelTypes["order_by"] | undefined; + slot?: ModelTypes["order_by"] | undefined; + }; + /** aggregate variance on columns */ + ["token_txn_variance_fields"]: { + amount?: number | undefined; + fee?: number | undefined; + slot?: number | undefined; + }; + /** order by variance() on columns of table "token_txn" */ + ["token_txn_variance_order_by"]: { + amount?: ModelTypes["order_by"] | undefined; + fee?: ModelTypes["order_by"] | undefined; + slot?: ModelTypes["order_by"] | undefined; + }; ["token_update_column"]: token_update_column; ["token_updates"]: { /** sets the columns of the filtered rows to the given values */ @@ -32599,6 +35714,14 @@ export type GraphQLTypes = { token: string; /** An object relationship */ tokenByToken: GraphQLTypes["token"]; + /** An array relationship */ + tokenTxnsByToata: Array; + /** An aggregate relationship */ + tokenTxnsByToata_aggregate: GraphQLTypes["token_txn_aggregate"]; + /** An array relationship */ + token_txns: Array; + /** An aggregate relationship */ + token_txns_aggregate: GraphQLTypes["token_txn_aggregate"]; updatedAt: GraphQLTypes["timestamptz"]; }; /** aggregated selection of "ata" */ @@ -32663,6 +35786,14 @@ export type GraphQLTypes = { pubKey?: GraphQLTypes["String_comparison_exp"] | undefined; token?: GraphQLTypes["String_comparison_exp"] | undefined; tokenByToken?: GraphQLTypes["token_bool_exp"] | undefined; + tokenTxnsByToata?: GraphQLTypes["token_txn_bool_exp"] | undefined; + tokenTxnsByToata_aggregate?: + | GraphQLTypes["token_txn_aggregate_bool_exp"] + | undefined; + token_txns?: GraphQLTypes["token_txn_bool_exp"] | undefined; + token_txns_aggregate?: + | GraphQLTypes["token_txn_aggregate_bool_exp"] + | undefined; updatedAt?: GraphQLTypes["timestamptz_comparison_exp"] | undefined; }; /** unique or primary key constraints on table "ata" */ @@ -32678,6 +35809,10 @@ export type GraphQLTypes = { pubKey?: string | undefined; token?: string | undefined; tokenByToken?: GraphQLTypes["token_obj_rel_insert_input"] | undefined; + tokenTxnsByToata?: + | GraphQLTypes["token_txn_arr_rel_insert_input"] + | undefined; + token_txns?: GraphQLTypes["token_txn_arr_rel_insert_input"] | undefined; updatedAt?: GraphQLTypes["timestamptz"] | undefined; }; /** aggregate max on columns */ @@ -32730,6 +35865,12 @@ export type GraphQLTypes = { /** data from the rows affected by the mutation */ returning: Array; }; + /** input type for inserting object relation for remote table "ata" */ + ["ata_obj_rel_insert_input"]: { + data: GraphQLTypes["ata_insert_input"]; + /** upsert condition */ + on_conflict?: GraphQLTypes["ata_on_conflict"] | undefined; + }; /** on_conflict condition type for table "ata" */ ["ata_on_conflict"]: { constraint: GraphQLTypes["ata_constraint"]; @@ -32747,6 +35888,12 @@ export type GraphQLTypes = { pubKey?: GraphQLTypes["order_by"] | undefined; token?: GraphQLTypes["order_by"] | undefined; tokenByToken?: GraphQLTypes["token_order_by"] | undefined; + tokenTxnsByToata_aggregate?: + | GraphQLTypes["token_txn_aggregate_order_by"] + | undefined; + token_txns_aggregate?: + | GraphQLTypes["token_txn_aggregate_order_by"] + | undefined; updatedAt?: GraphQLTypes["order_by"] | undefined; }; /** primary key columns input for table: ata */ @@ -33703,6 +36850,10 @@ export type GraphQLTypes = { notifications_aggregate: GraphQLTypes["notification_aggregate"]; password: string; /** An array relationship */ + token_txns: Array; + /** An aggregate relationship */ + token_txns_aggregate: GraphQLTypes["token_txn_aggregate"]; + /** An array relationship */ tokens: Array; /** An aggregate relationship */ tokens_aggregate: GraphQLTypes["token_aggregate"]; @@ -33791,6 +36942,10 @@ export type GraphQLTypes = { | GraphQLTypes["notification_aggregate_bool_exp"] | undefined; password?: GraphQLTypes["String_comparison_exp"] | undefined; + token_txns?: GraphQLTypes["token_txn_bool_exp"] | undefined; + token_txns_aggregate?: + | GraphQLTypes["token_txn_aggregate_bool_exp"] + | undefined; tokens?: GraphQLTypes["token_bool_exp"] | undefined; tokens_aggregate?: GraphQLTypes["token_aggregate_bool_exp"] | undefined; transactions?: GraphQLTypes["transactions_bool_exp"] | undefined; @@ -33842,6 +36997,7 @@ export type GraphQLTypes = { | GraphQLTypes["notification_arr_rel_insert_input"] | undefined; password?: string | undefined; + token_txns?: GraphQLTypes["token_txn_arr_rel_insert_input"] | undefined; tokens?: GraphQLTypes["token_arr_rel_insert_input"] | undefined; transactions?: | GraphQLTypes["transactions_arr_rel_insert_input"] @@ -33930,6 +37086,9 @@ export type GraphQLTypes = { | GraphQLTypes["notification_aggregate_order_by"] | undefined; password?: GraphQLTypes["order_by"] | undefined; + token_txns_aggregate?: + | GraphQLTypes["token_txn_aggregate_order_by"] + | undefined; tokens_aggregate?: GraphQLTypes["token_aggregate_order_by"] | undefined; transactions_aggregate?: | GraphQLTypes["transactions_aggregate_order_by"] @@ -34835,6 +37994,10 @@ export type GraphQLTypes = { delete_token?: GraphQLTypes["token_mutation_response"] | undefined; /** delete single row from the table: "token" */ delete_token_by_pk?: GraphQLTypes["token"] | undefined; + /** delete data from the table: "token_txn" */ + delete_token_txn?: GraphQLTypes["token_txn_mutation_response"] | undefined; + /** delete single row from the table: "token_txn" */ + delete_token_txn_by_pk?: GraphQLTypes["token_txn"] | undefined; /** delete data from the table: "transactions" */ delete_transactions?: | GraphQLTypes["transactions_mutation_response"] @@ -34941,6 +38104,10 @@ export type GraphQLTypes = { insert_token?: GraphQLTypes["token_mutation_response"] | undefined; /** insert a single row into the table: "token" */ insert_token_one?: GraphQLTypes["token"] | undefined; + /** insert data into the table: "token_txn" */ + insert_token_txn?: GraphQLTypes["token_txn_mutation_response"] | undefined; + /** insert a single row into the table: "token_txn" */ + insert_token_txn_one?: GraphQLTypes["token_txn"] | undefined; /** insert data into the table: "transactions" */ insert_transactions?: | GraphQLTypes["transactions_mutation_response"] @@ -35126,6 +38293,14 @@ export type GraphQLTypes = { update_token_many?: | Array | undefined; + /** update data of the table: "token_txn" */ + update_token_txn?: GraphQLTypes["token_txn_mutation_response"] | undefined; + /** update single row of the table: "token_txn" */ + update_token_txn_by_pk?: GraphQLTypes["token_txn"] | undefined; + /** update multiples rows of table: "token_txn" */ + update_token_txn_many?: + | Array + | undefined; /** update data of the table: "transactions" */ update_transactions?: | GraphQLTypes["transactions_mutation_response"] @@ -36019,6 +39194,12 @@ export type GraphQLTypes = { token_aggregate: GraphQLTypes["token_aggregate"]; /** fetch data from the table: "token" using primary key columns */ token_by_pk?: GraphQLTypes["token"] | undefined; + /** fetch data from the table: "token_txn" */ + token_txn: Array; + /** fetch aggregated fields from the table: "token_txn" */ + token_txn_aggregate: GraphQLTypes["token_txn_aggregate"]; + /** fetch data from the table: "token_txn" using primary key columns */ + token_txn_by_pk?: GraphQLTypes["token_txn"] | undefined; /** An array relationship */ transactions: Array; /** An aggregate relationship */ @@ -36329,6 +39510,14 @@ export type GraphQLTypes = { token_by_pk?: GraphQLTypes["token"] | undefined; /** fetch data from the table in a streaming manner: "token" */ token_stream: Array; + /** fetch data from the table: "token_txn" */ + token_txn: Array; + /** fetch aggregated fields from the table: "token_txn" */ + token_txn_aggregate: GraphQLTypes["token_txn_aggregate"]; + /** fetch data from the table: "token_txn" using primary key columns */ + token_txn_by_pk?: GraphQLTypes["token_txn"] | undefined; + /** fetch data from the table in a streaming manner: "token_txn" */ + token_txn_stream: Array; /** An array relationship */ transactions: Array; /** An aggregate relationship */ @@ -36390,6 +39579,10 @@ export type GraphQLTypes = { network: string; privateKey: string; pubKey: string; + /** An array relationship */ + token_txns: Array; + /** An aggregate relationship */ + token_txns_aggregate: GraphQLTypes["token_txn_aggregate"]; updatedAt: GraphQLTypes["timestamptz"]; }; /** aggregated selection of "token" */ @@ -36443,6 +39636,10 @@ export type GraphQLTypes = { network?: GraphQLTypes["String_comparison_exp"] | undefined; privateKey?: GraphQLTypes["String_comparison_exp"] | undefined; pubKey?: GraphQLTypes["String_comparison_exp"] | undefined; + token_txns?: GraphQLTypes["token_txn_bool_exp"] | undefined; + token_txns_aggregate?: + | GraphQLTypes["token_txn_aggregate_bool_exp"] + | undefined; updatedAt?: GraphQLTypes["timestamptz_comparison_exp"] | undefined; }; /** unique or primary key constraints on table "token" */ @@ -36460,6 +39657,7 @@ export type GraphQLTypes = { network?: string | undefined; privateKey?: string | undefined; pubKey?: string | undefined; + token_txns?: GraphQLTypes["token_txn_arr_rel_insert_input"] | undefined; updatedAt?: GraphQLTypes["timestamptz"] | undefined; }; /** aggregate max on columns */ @@ -36549,6 +39747,9 @@ export type GraphQLTypes = { network?: GraphQLTypes["order_by"] | undefined; privateKey?: GraphQLTypes["order_by"] | undefined; pubKey?: GraphQLTypes["order_by"] | undefined; + token_txns_aggregate?: + | GraphQLTypes["token_txn_aggregate_order_by"] + | undefined; updatedAt?: GraphQLTypes["order_by"] | undefined; }; /** primary key columns input for table: token */ @@ -36591,6 +39792,525 @@ export type GraphQLTypes = { pubKey?: string | undefined; updatedAt?: GraphQLTypes["timestamptz"] | undefined; }; + /** all the token transactions */ + ["token_txn"]: { + __typename: "token_txn"; + amount: GraphQLTypes["float8"]; + blockHash: string; + clientId: GraphQLTypes["uuid"]; + created_at: GraphQLTypes["timestamptz"]; + fee: GraphQLTypes["float8"]; + fromAta: string; + hash: string; + id: GraphQLTypes["uuid"]; + isMint: boolean; + network: string; + slot: GraphQLTypes["bigint"]; + status: string; + time: GraphQLTypes["timestamptz"]; + toAta: string; + token: string; + /** An object relationship */ + token_txn_to_client: GraphQLTypes["client"]; + /** An object relationship */ + token_txn_to_token: GraphQLTypes["token"]; + /** An object relationship */ + txn_fromAta_to_ata: GraphQLTypes["ata"]; + /** An object relationship */ + txn_toAta_to_ata: GraphQLTypes["ata"]; + updated_at: GraphQLTypes["timestamptz"]; + }; + /** aggregated selection of "token_txn" */ + ["token_txn_aggregate"]: { + __typename: "token_txn_aggregate"; + aggregate?: GraphQLTypes["token_txn_aggregate_fields"] | undefined; + nodes: Array; + }; + ["token_txn_aggregate_bool_exp"]: { + avg?: GraphQLTypes["token_txn_aggregate_bool_exp_avg"] | undefined; + bool_and?: + | GraphQLTypes["token_txn_aggregate_bool_exp_bool_and"] + | undefined; + bool_or?: GraphQLTypes["token_txn_aggregate_bool_exp_bool_or"] | undefined; + corr?: GraphQLTypes["token_txn_aggregate_bool_exp_corr"] | undefined; + count?: GraphQLTypes["token_txn_aggregate_bool_exp_count"] | undefined; + covar_samp?: + | GraphQLTypes["token_txn_aggregate_bool_exp_covar_samp"] + | undefined; + max?: GraphQLTypes["token_txn_aggregate_bool_exp_max"] | undefined; + min?: GraphQLTypes["token_txn_aggregate_bool_exp_min"] | undefined; + stddev_samp?: + | GraphQLTypes["token_txn_aggregate_bool_exp_stddev_samp"] + | undefined; + sum?: GraphQLTypes["token_txn_aggregate_bool_exp_sum"] | undefined; + var_samp?: + | GraphQLTypes["token_txn_aggregate_bool_exp_var_samp"] + | undefined; + }; + ["token_txn_aggregate_bool_exp_avg"]: { + arguments: GraphQLTypes["token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns"]; + distinct?: boolean | undefined; + filter?: GraphQLTypes["token_txn_bool_exp"] | undefined; + predicate: GraphQLTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_bool_and"]: { + arguments: GraphQLTypes["token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns"]; + distinct?: boolean | undefined; + filter?: GraphQLTypes["token_txn_bool_exp"] | undefined; + predicate: GraphQLTypes["Boolean_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_bool_or"]: { + arguments: GraphQLTypes["token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns"]; + distinct?: boolean | undefined; + filter?: GraphQLTypes["token_txn_bool_exp"] | undefined; + predicate: GraphQLTypes["Boolean_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_corr"]: { + arguments: GraphQLTypes["token_txn_aggregate_bool_exp_corr_arguments"]; + distinct?: boolean | undefined; + filter?: GraphQLTypes["token_txn_bool_exp"] | undefined; + predicate: GraphQLTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_corr_arguments"]: { + X: GraphQLTypes["token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns"]; + Y: GraphQLTypes["token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns"]; + }; + ["token_txn_aggregate_bool_exp_count"]: { + arguments?: Array | undefined; + distinct?: boolean | undefined; + filter?: GraphQLTypes["token_txn_bool_exp"] | undefined; + predicate: GraphQLTypes["Int_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_covar_samp"]: { + arguments: GraphQLTypes["token_txn_aggregate_bool_exp_covar_samp_arguments"]; + distinct?: boolean | undefined; + filter?: GraphQLTypes["token_txn_bool_exp"] | undefined; + predicate: GraphQLTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_covar_samp_arguments"]: { + X: GraphQLTypes["token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns"]; + Y: GraphQLTypes["token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns"]; + }; + ["token_txn_aggregate_bool_exp_max"]: { + arguments: GraphQLTypes["token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns"]; + distinct?: boolean | undefined; + filter?: GraphQLTypes["token_txn_bool_exp"] | undefined; + predicate: GraphQLTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_min"]: { + arguments: GraphQLTypes["token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns"]; + distinct?: boolean | undefined; + filter?: GraphQLTypes["token_txn_bool_exp"] | undefined; + predicate: GraphQLTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_stddev_samp"]: { + arguments: GraphQLTypes["token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns"]; + distinct?: boolean | undefined; + filter?: GraphQLTypes["token_txn_bool_exp"] | undefined; + predicate: GraphQLTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_sum"]: { + arguments: GraphQLTypes["token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns"]; + distinct?: boolean | undefined; + filter?: GraphQLTypes["token_txn_bool_exp"] | undefined; + predicate: GraphQLTypes["float8_comparison_exp"]; + }; + ["token_txn_aggregate_bool_exp_var_samp"]: { + arguments: GraphQLTypes["token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns"]; + distinct?: boolean | undefined; + filter?: GraphQLTypes["token_txn_bool_exp"] | undefined; + predicate: GraphQLTypes["float8_comparison_exp"]; + }; + /** aggregate fields of "token_txn" */ + ["token_txn_aggregate_fields"]: { + __typename: "token_txn_aggregate_fields"; + avg?: GraphQLTypes["token_txn_avg_fields"] | undefined; + count: number; + max?: GraphQLTypes["token_txn_max_fields"] | undefined; + min?: GraphQLTypes["token_txn_min_fields"] | undefined; + stddev?: GraphQLTypes["token_txn_stddev_fields"] | undefined; + stddev_pop?: GraphQLTypes["token_txn_stddev_pop_fields"] | undefined; + stddev_samp?: GraphQLTypes["token_txn_stddev_samp_fields"] | undefined; + sum?: GraphQLTypes["token_txn_sum_fields"] | undefined; + var_pop?: GraphQLTypes["token_txn_var_pop_fields"] | undefined; + var_samp?: GraphQLTypes["token_txn_var_samp_fields"] | undefined; + variance?: GraphQLTypes["token_txn_variance_fields"] | undefined; + }; + /** order by aggregate values of table "token_txn" */ + ["token_txn_aggregate_order_by"]: { + avg?: GraphQLTypes["token_txn_avg_order_by"] | undefined; + count?: GraphQLTypes["order_by"] | undefined; + max?: GraphQLTypes["token_txn_max_order_by"] | undefined; + min?: GraphQLTypes["token_txn_min_order_by"] | undefined; + stddev?: GraphQLTypes["token_txn_stddev_order_by"] | undefined; + stddev_pop?: GraphQLTypes["token_txn_stddev_pop_order_by"] | undefined; + stddev_samp?: GraphQLTypes["token_txn_stddev_samp_order_by"] | undefined; + sum?: GraphQLTypes["token_txn_sum_order_by"] | undefined; + var_pop?: GraphQLTypes["token_txn_var_pop_order_by"] | undefined; + var_samp?: GraphQLTypes["token_txn_var_samp_order_by"] | undefined; + variance?: GraphQLTypes["token_txn_variance_order_by"] | undefined; + }; + /** input type for inserting array relation for remote table "token_txn" */ + ["token_txn_arr_rel_insert_input"]: { + data: Array; + /** upsert condition */ + on_conflict?: GraphQLTypes["token_txn_on_conflict"] | undefined; + }; + /** aggregate avg on columns */ + ["token_txn_avg_fields"]: { + __typename: "token_txn_avg_fields"; + amount?: number | undefined; + fee?: number | undefined; + slot?: number | undefined; + }; + /** order by avg() on columns of table "token_txn" */ + ["token_txn_avg_order_by"]: { + amount?: GraphQLTypes["order_by"] | undefined; + fee?: GraphQLTypes["order_by"] | undefined; + slot?: GraphQLTypes["order_by"] | undefined; + }; + /** Boolean expression to filter rows from the table "token_txn". All fields are combined with a logical 'AND'. */ + ["token_txn_bool_exp"]: { + _and?: Array | undefined; + _not?: GraphQLTypes["token_txn_bool_exp"] | undefined; + _or?: Array | undefined; + amount?: GraphQLTypes["float8_comparison_exp"] | undefined; + blockHash?: GraphQLTypes["String_comparison_exp"] | undefined; + clientId?: GraphQLTypes["uuid_comparison_exp"] | undefined; + created_at?: GraphQLTypes["timestamptz_comparison_exp"] | undefined; + fee?: GraphQLTypes["float8_comparison_exp"] | undefined; + fromAta?: GraphQLTypes["String_comparison_exp"] | undefined; + hash?: GraphQLTypes["String_comparison_exp"] | undefined; + id?: GraphQLTypes["uuid_comparison_exp"] | undefined; + isMint?: GraphQLTypes["Boolean_comparison_exp"] | undefined; + network?: GraphQLTypes["String_comparison_exp"] | undefined; + slot?: GraphQLTypes["bigint_comparison_exp"] | undefined; + status?: GraphQLTypes["String_comparison_exp"] | undefined; + time?: GraphQLTypes["timestamptz_comparison_exp"] | undefined; + toAta?: GraphQLTypes["String_comparison_exp"] | undefined; + token?: GraphQLTypes["String_comparison_exp"] | undefined; + token_txn_to_client?: GraphQLTypes["client_bool_exp"] | undefined; + token_txn_to_token?: GraphQLTypes["token_bool_exp"] | undefined; + txn_fromAta_to_ata?: GraphQLTypes["ata_bool_exp"] | undefined; + txn_toAta_to_ata?: GraphQLTypes["ata_bool_exp"] | undefined; + updated_at?: GraphQLTypes["timestamptz_comparison_exp"] | undefined; + }; + /** unique or primary key constraints on table "token_txn" */ + ["token_txn_constraint"]: token_txn_constraint; + /** input type for incrementing numeric columns in table "token_txn" */ + ["token_txn_inc_input"]: { + amount?: GraphQLTypes["float8"] | undefined; + fee?: GraphQLTypes["float8"] | undefined; + slot?: GraphQLTypes["bigint"] | undefined; + }; + /** input type for inserting data into table "token_txn" */ + ["token_txn_insert_input"]: { + amount?: GraphQLTypes["float8"] | undefined; + blockHash?: string | undefined; + clientId?: GraphQLTypes["uuid"] | undefined; + created_at?: GraphQLTypes["timestamptz"] | undefined; + fee?: GraphQLTypes["float8"] | undefined; + fromAta?: string | undefined; + hash?: string | undefined; + id?: GraphQLTypes["uuid"] | undefined; + isMint?: boolean | undefined; + network?: string | undefined; + slot?: GraphQLTypes["bigint"] | undefined; + status?: string | undefined; + time?: GraphQLTypes["timestamptz"] | undefined; + toAta?: string | undefined; + token?: string | undefined; + token_txn_to_client?: + | GraphQLTypes["client_obj_rel_insert_input"] + | undefined; + token_txn_to_token?: GraphQLTypes["token_obj_rel_insert_input"] | undefined; + txn_fromAta_to_ata?: GraphQLTypes["ata_obj_rel_insert_input"] | undefined; + txn_toAta_to_ata?: GraphQLTypes["ata_obj_rel_insert_input"] | undefined; + updated_at?: GraphQLTypes["timestamptz"] | undefined; + }; + /** aggregate max on columns */ + ["token_txn_max_fields"]: { + __typename: "token_txn_max_fields"; + amount?: GraphQLTypes["float8"] | undefined; + blockHash?: string | undefined; + clientId?: GraphQLTypes["uuid"] | undefined; + created_at?: GraphQLTypes["timestamptz"] | undefined; + fee?: GraphQLTypes["float8"] | undefined; + fromAta?: string | undefined; + hash?: string | undefined; + id?: GraphQLTypes["uuid"] | undefined; + network?: string | undefined; + slot?: GraphQLTypes["bigint"] | undefined; + status?: string | undefined; + time?: GraphQLTypes["timestamptz"] | undefined; + toAta?: string | undefined; + token?: string | undefined; + updated_at?: GraphQLTypes["timestamptz"] | undefined; + }; + /** order by max() on columns of table "token_txn" */ + ["token_txn_max_order_by"]: { + amount?: GraphQLTypes["order_by"] | undefined; + blockHash?: GraphQLTypes["order_by"] | undefined; + clientId?: GraphQLTypes["order_by"] | undefined; + created_at?: GraphQLTypes["order_by"] | undefined; + fee?: GraphQLTypes["order_by"] | undefined; + fromAta?: GraphQLTypes["order_by"] | undefined; + hash?: GraphQLTypes["order_by"] | undefined; + id?: GraphQLTypes["order_by"] | undefined; + network?: GraphQLTypes["order_by"] | undefined; + slot?: GraphQLTypes["order_by"] | undefined; + status?: GraphQLTypes["order_by"] | undefined; + time?: GraphQLTypes["order_by"] | undefined; + toAta?: GraphQLTypes["order_by"] | undefined; + token?: GraphQLTypes["order_by"] | undefined; + updated_at?: GraphQLTypes["order_by"] | undefined; + }; + /** aggregate min on columns */ + ["token_txn_min_fields"]: { + __typename: "token_txn_min_fields"; + amount?: GraphQLTypes["float8"] | undefined; + blockHash?: string | undefined; + clientId?: GraphQLTypes["uuid"] | undefined; + created_at?: GraphQLTypes["timestamptz"] | undefined; + fee?: GraphQLTypes["float8"] | undefined; + fromAta?: string | undefined; + hash?: string | undefined; + id?: GraphQLTypes["uuid"] | undefined; + network?: string | undefined; + slot?: GraphQLTypes["bigint"] | undefined; + status?: string | undefined; + time?: GraphQLTypes["timestamptz"] | undefined; + toAta?: string | undefined; + token?: string | undefined; + updated_at?: GraphQLTypes["timestamptz"] | undefined; + }; + /** order by min() on columns of table "token_txn" */ + ["token_txn_min_order_by"]: { + amount?: GraphQLTypes["order_by"] | undefined; + blockHash?: GraphQLTypes["order_by"] | undefined; + clientId?: GraphQLTypes["order_by"] | undefined; + created_at?: GraphQLTypes["order_by"] | undefined; + fee?: GraphQLTypes["order_by"] | undefined; + fromAta?: GraphQLTypes["order_by"] | undefined; + hash?: GraphQLTypes["order_by"] | undefined; + id?: GraphQLTypes["order_by"] | undefined; + network?: GraphQLTypes["order_by"] | undefined; + slot?: GraphQLTypes["order_by"] | undefined; + status?: GraphQLTypes["order_by"] | undefined; + time?: GraphQLTypes["order_by"] | undefined; + toAta?: GraphQLTypes["order_by"] | undefined; + token?: GraphQLTypes["order_by"] | undefined; + updated_at?: GraphQLTypes["order_by"] | undefined; + }; + /** response of any mutation on the table "token_txn" */ + ["token_txn_mutation_response"]: { + __typename: "token_txn_mutation_response"; + /** number of rows affected by the mutation */ + affected_rows: number; + /** data from the rows affected by the mutation */ + returning: Array; + }; + /** on_conflict condition type for table "token_txn" */ + ["token_txn_on_conflict"]: { + constraint: GraphQLTypes["token_txn_constraint"]; + update_columns: Array; + where?: GraphQLTypes["token_txn_bool_exp"] | undefined; + }; + /** Ordering options when selecting data from "token_txn". */ + ["token_txn_order_by"]: { + amount?: GraphQLTypes["order_by"] | undefined; + blockHash?: GraphQLTypes["order_by"] | undefined; + clientId?: GraphQLTypes["order_by"] | undefined; + created_at?: GraphQLTypes["order_by"] | undefined; + fee?: GraphQLTypes["order_by"] | undefined; + fromAta?: GraphQLTypes["order_by"] | undefined; + hash?: GraphQLTypes["order_by"] | undefined; + id?: GraphQLTypes["order_by"] | undefined; + isMint?: GraphQLTypes["order_by"] | undefined; + network?: GraphQLTypes["order_by"] | undefined; + slot?: GraphQLTypes["order_by"] | undefined; + status?: GraphQLTypes["order_by"] | undefined; + time?: GraphQLTypes["order_by"] | undefined; + toAta?: GraphQLTypes["order_by"] | undefined; + token?: GraphQLTypes["order_by"] | undefined; + token_txn_to_client?: GraphQLTypes["client_order_by"] | undefined; + token_txn_to_token?: GraphQLTypes["token_order_by"] | undefined; + txn_fromAta_to_ata?: GraphQLTypes["ata_order_by"] | undefined; + txn_toAta_to_ata?: GraphQLTypes["ata_order_by"] | undefined; + updated_at?: GraphQLTypes["order_by"] | undefined; + }; + /** primary key columns input for table: token_txn */ + ["token_txn_pk_columns_input"]: { + id: GraphQLTypes["uuid"]; + }; + /** select columns of table "token_txn" */ + ["token_txn_select_column"]: token_txn_select_column; + /** select "token_txn_aggregate_bool_exp_avg_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns; + /** select "token_txn_aggregate_bool_exp_bool_and_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns; + /** select "token_txn_aggregate_bool_exp_bool_or_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns; + /** select "token_txn_aggregate_bool_exp_corr_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns; + /** select "token_txn_aggregate_bool_exp_covar_samp_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns; + /** select "token_txn_aggregate_bool_exp_max_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns; + /** select "token_txn_aggregate_bool_exp_min_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns; + /** select "token_txn_aggregate_bool_exp_stddev_samp_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns; + /** select "token_txn_aggregate_bool_exp_sum_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns; + /** select "token_txn_aggregate_bool_exp_var_samp_arguments_columns" columns of table "token_txn" */ + ["token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns"]: token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns; + /** input type for updating data in table "token_txn" */ + ["token_txn_set_input"]: { + amount?: GraphQLTypes["float8"] | undefined; + blockHash?: string | undefined; + clientId?: GraphQLTypes["uuid"] | undefined; + created_at?: GraphQLTypes["timestamptz"] | undefined; + fee?: GraphQLTypes["float8"] | undefined; + fromAta?: string | undefined; + hash?: string | undefined; + id?: GraphQLTypes["uuid"] | undefined; + isMint?: boolean | undefined; + network?: string | undefined; + slot?: GraphQLTypes["bigint"] | undefined; + status?: string | undefined; + time?: GraphQLTypes["timestamptz"] | undefined; + toAta?: string | undefined; + token?: string | undefined; + updated_at?: GraphQLTypes["timestamptz"] | undefined; + }; + /** aggregate stddev on columns */ + ["token_txn_stddev_fields"]: { + __typename: "token_txn_stddev_fields"; + amount?: number | undefined; + fee?: number | undefined; + slot?: number | undefined; + }; + /** order by stddev() on columns of table "token_txn" */ + ["token_txn_stddev_order_by"]: { + amount?: GraphQLTypes["order_by"] | undefined; + fee?: GraphQLTypes["order_by"] | undefined; + slot?: GraphQLTypes["order_by"] | undefined; + }; + /** aggregate stddev_pop on columns */ + ["token_txn_stddev_pop_fields"]: { + __typename: "token_txn_stddev_pop_fields"; + amount?: number | undefined; + fee?: number | undefined; + slot?: number | undefined; + }; + /** order by stddev_pop() on columns of table "token_txn" */ + ["token_txn_stddev_pop_order_by"]: { + amount?: GraphQLTypes["order_by"] | undefined; + fee?: GraphQLTypes["order_by"] | undefined; + slot?: GraphQLTypes["order_by"] | undefined; + }; + /** aggregate stddev_samp on columns */ + ["token_txn_stddev_samp_fields"]: { + __typename: "token_txn_stddev_samp_fields"; + amount?: number | undefined; + fee?: number | undefined; + slot?: number | undefined; + }; + /** order by stddev_samp() on columns of table "token_txn" */ + ["token_txn_stddev_samp_order_by"]: { + amount?: GraphQLTypes["order_by"] | undefined; + fee?: GraphQLTypes["order_by"] | undefined; + slot?: GraphQLTypes["order_by"] | undefined; + }; + /** Streaming cursor of the table "token_txn" */ + ["token_txn_stream_cursor_input"]: { + /** Stream column input with initial value */ + initial_value: GraphQLTypes["token_txn_stream_cursor_value_input"]; + /** cursor ordering */ + ordering?: GraphQLTypes["cursor_ordering"] | undefined; + }; + /** Initial value of the column from where the streaming should start */ + ["token_txn_stream_cursor_value_input"]: { + amount?: GraphQLTypes["float8"] | undefined; + blockHash?: string | undefined; + clientId?: GraphQLTypes["uuid"] | undefined; + created_at?: GraphQLTypes["timestamptz"] | undefined; + fee?: GraphQLTypes["float8"] | undefined; + fromAta?: string | undefined; + hash?: string | undefined; + id?: GraphQLTypes["uuid"] | undefined; + isMint?: boolean | undefined; + network?: string | undefined; + slot?: GraphQLTypes["bigint"] | undefined; + status?: string | undefined; + time?: GraphQLTypes["timestamptz"] | undefined; + toAta?: string | undefined; + token?: string | undefined; + updated_at?: GraphQLTypes["timestamptz"] | undefined; + }; + /** aggregate sum on columns */ + ["token_txn_sum_fields"]: { + __typename: "token_txn_sum_fields"; + amount?: GraphQLTypes["float8"] | undefined; + fee?: GraphQLTypes["float8"] | undefined; + slot?: GraphQLTypes["bigint"] | undefined; + }; + /** order by sum() on columns of table "token_txn" */ + ["token_txn_sum_order_by"]: { + amount?: GraphQLTypes["order_by"] | undefined; + fee?: GraphQLTypes["order_by"] | undefined; + slot?: GraphQLTypes["order_by"] | undefined; + }; + /** update columns of table "token_txn" */ + ["token_txn_update_column"]: token_txn_update_column; + ["token_txn_updates"]: { + /** increments the numeric columns with given value of the filtered values */ + _inc?: GraphQLTypes["token_txn_inc_input"] | undefined; + /** sets the columns of the filtered rows to the given values */ + _set?: GraphQLTypes["token_txn_set_input"] | undefined; + /** filter the rows which have to be updated */ + where: GraphQLTypes["token_txn_bool_exp"]; + }; + /** aggregate var_pop on columns */ + ["token_txn_var_pop_fields"]: { + __typename: "token_txn_var_pop_fields"; + amount?: number | undefined; + fee?: number | undefined; + slot?: number | undefined; + }; + /** order by var_pop() on columns of table "token_txn" */ + ["token_txn_var_pop_order_by"]: { + amount?: GraphQLTypes["order_by"] | undefined; + fee?: GraphQLTypes["order_by"] | undefined; + slot?: GraphQLTypes["order_by"] | undefined; + }; + /** aggregate var_samp on columns */ + ["token_txn_var_samp_fields"]: { + __typename: "token_txn_var_samp_fields"; + amount?: number | undefined; + fee?: number | undefined; + slot?: number | undefined; + }; + /** order by var_samp() on columns of table "token_txn" */ + ["token_txn_var_samp_order_by"]: { + amount?: GraphQLTypes["order_by"] | undefined; + fee?: GraphQLTypes["order_by"] | undefined; + slot?: GraphQLTypes["order_by"] | undefined; + }; + /** aggregate variance on columns */ + ["token_txn_variance_fields"]: { + __typename: "token_txn_variance_fields"; + amount?: number | undefined; + fee?: number | undefined; + slot?: number | undefined; + }; + /** order by variance() on columns of table "token_txn" */ + ["token_txn_variance_order_by"]: { + amount?: GraphQLTypes["order_by"] | undefined; + fee?: GraphQLTypes["order_by"] | undefined; + slot?: GraphQLTypes["order_by"] | undefined; + }; /** update columns of table "token" */ ["token_update_column"]: token_update_column; ["token_updates"]: { @@ -37918,6 +41638,96 @@ export const enum token_select_column { pubKey = "pubKey", updatedAt = "updatedAt", } +/** unique or primary key constraints on table "token_txn" */ +export const enum token_txn_constraint { + token_txn_pkey = "token_txn_pkey", +} +/** select columns of table "token_txn" */ +export const enum token_txn_select_column { + amount = "amount", + blockHash = "blockHash", + clientId = "clientId", + created_at = "created_at", + fee = "fee", + fromAta = "fromAta", + hash = "hash", + id = "id", + isMint = "isMint", + network = "network", + slot = "slot", + status = "status", + time = "time", + toAta = "toAta", + token = "token", + updated_at = "updated_at", +} +/** select "token_txn_aggregate_bool_exp_avg_arguments_columns" columns of table "token_txn" */ +export const enum token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns { + amount = "amount", + fee = "fee", +} +/** select "token_txn_aggregate_bool_exp_bool_and_arguments_columns" columns of table "token_txn" */ +export const enum token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns { + isMint = "isMint", +} +/** select "token_txn_aggregate_bool_exp_bool_or_arguments_columns" columns of table "token_txn" */ +export const enum token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns { + isMint = "isMint", +} +/** select "token_txn_aggregate_bool_exp_corr_arguments_columns" columns of table "token_txn" */ +export const enum token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns { + amount = "amount", + fee = "fee", +} +/** select "token_txn_aggregate_bool_exp_covar_samp_arguments_columns" columns of table "token_txn" */ +export const enum token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns { + amount = "amount", + fee = "fee", +} +/** select "token_txn_aggregate_bool_exp_max_arguments_columns" columns of table "token_txn" */ +export const enum token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns { + amount = "amount", + fee = "fee", +} +/** select "token_txn_aggregate_bool_exp_min_arguments_columns" columns of table "token_txn" */ +export const enum token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns { + amount = "amount", + fee = "fee", +} +/** select "token_txn_aggregate_bool_exp_stddev_samp_arguments_columns" columns of table "token_txn" */ +export const enum token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns { + amount = "amount", + fee = "fee", +} +/** select "token_txn_aggregate_bool_exp_sum_arguments_columns" columns of table "token_txn" */ +export const enum token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns { + amount = "amount", + fee = "fee", +} +/** select "token_txn_aggregate_bool_exp_var_samp_arguments_columns" columns of table "token_txn" */ +export const enum token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns { + amount = "amount", + fee = "fee", +} +/** update columns of table "token_txn" */ +export const enum token_txn_update_column { + amount = "amount", + blockHash = "blockHash", + clientId = "clientId", + created_at = "created_at", + fee = "fee", + fromAta = "fromAta", + hash = "hash", + id = "id", + isMint = "isMint", + network = "network", + slot = "slot", + status = "status", + time = "time", + toAta = "toAta", + token = "token", + updated_at = "updated_at", +} /** update columns of table "token" */ export const enum token_update_column { authority = "authority", @@ -38121,6 +41931,7 @@ type ZEUS_VARIABLES = { ["ata_insert_input"]: ValueTypes["ata_insert_input"]; ["ata_max_order_by"]: ValueTypes["ata_max_order_by"]; ["ata_min_order_by"]: ValueTypes["ata_min_order_by"]; + ["ata_obj_rel_insert_input"]: ValueTypes["ata_obj_rel_insert_input"]; ["ata_on_conflict"]: ValueTypes["ata_on_conflict"]; ["ata_order_by"]: ValueTypes["ata_order_by"]; ["ata_pk_columns_input"]: ValueTypes["ata_pk_columns_input"]; @@ -38392,6 +42203,55 @@ type ZEUS_VARIABLES = { ["token_set_input"]: ValueTypes["token_set_input"]; ["token_stream_cursor_input"]: ValueTypes["token_stream_cursor_input"]; ["token_stream_cursor_value_input"]: ValueTypes["token_stream_cursor_value_input"]; + ["token_txn_aggregate_bool_exp"]: ValueTypes["token_txn_aggregate_bool_exp"]; + ["token_txn_aggregate_bool_exp_avg"]: ValueTypes["token_txn_aggregate_bool_exp_avg"]; + ["token_txn_aggregate_bool_exp_bool_and"]: ValueTypes["token_txn_aggregate_bool_exp_bool_and"]; + ["token_txn_aggregate_bool_exp_bool_or"]: ValueTypes["token_txn_aggregate_bool_exp_bool_or"]; + ["token_txn_aggregate_bool_exp_corr"]: ValueTypes["token_txn_aggregate_bool_exp_corr"]; + ["token_txn_aggregate_bool_exp_corr_arguments"]: ValueTypes["token_txn_aggregate_bool_exp_corr_arguments"]; + ["token_txn_aggregate_bool_exp_count"]: ValueTypes["token_txn_aggregate_bool_exp_count"]; + ["token_txn_aggregate_bool_exp_covar_samp"]: ValueTypes["token_txn_aggregate_bool_exp_covar_samp"]; + ["token_txn_aggregate_bool_exp_covar_samp_arguments"]: ValueTypes["token_txn_aggregate_bool_exp_covar_samp_arguments"]; + ["token_txn_aggregate_bool_exp_max"]: ValueTypes["token_txn_aggregate_bool_exp_max"]; + ["token_txn_aggregate_bool_exp_min"]: ValueTypes["token_txn_aggregate_bool_exp_min"]; + ["token_txn_aggregate_bool_exp_stddev_samp"]: ValueTypes["token_txn_aggregate_bool_exp_stddev_samp"]; + ["token_txn_aggregate_bool_exp_sum"]: ValueTypes["token_txn_aggregate_bool_exp_sum"]; + ["token_txn_aggregate_bool_exp_var_samp"]: ValueTypes["token_txn_aggregate_bool_exp_var_samp"]; + ["token_txn_aggregate_order_by"]: ValueTypes["token_txn_aggregate_order_by"]; + ["token_txn_arr_rel_insert_input"]: ValueTypes["token_txn_arr_rel_insert_input"]; + ["token_txn_avg_order_by"]: ValueTypes["token_txn_avg_order_by"]; + ["token_txn_bool_exp"]: ValueTypes["token_txn_bool_exp"]; + ["token_txn_constraint"]: ValueTypes["token_txn_constraint"]; + ["token_txn_inc_input"]: ValueTypes["token_txn_inc_input"]; + ["token_txn_insert_input"]: ValueTypes["token_txn_insert_input"]; + ["token_txn_max_order_by"]: ValueTypes["token_txn_max_order_by"]; + ["token_txn_min_order_by"]: ValueTypes["token_txn_min_order_by"]; + ["token_txn_on_conflict"]: ValueTypes["token_txn_on_conflict"]; + ["token_txn_order_by"]: ValueTypes["token_txn_order_by"]; + ["token_txn_pk_columns_input"]: ValueTypes["token_txn_pk_columns_input"]; + ["token_txn_select_column"]: ValueTypes["token_txn_select_column"]; + ["token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns"]: ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_avg_arguments_columns"]; + ["token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns"]: ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_bool_and_arguments_columns"]; + ["token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns"]: ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_bool_or_arguments_columns"]; + ["token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns"]: ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_corr_arguments_columns"]; + ["token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns"]: ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_covar_samp_arguments_columns"]; + ["token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns"]: ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_max_arguments_columns"]; + ["token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns"]: ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_min_arguments_columns"]; + ["token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns"]: ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_stddev_samp_arguments_columns"]; + ["token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns"]: ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_sum_arguments_columns"]; + ["token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns"]: ValueTypes["token_txn_select_column_token_txn_aggregate_bool_exp_var_samp_arguments_columns"]; + ["token_txn_set_input"]: ValueTypes["token_txn_set_input"]; + ["token_txn_stddev_order_by"]: ValueTypes["token_txn_stddev_order_by"]; + ["token_txn_stddev_pop_order_by"]: ValueTypes["token_txn_stddev_pop_order_by"]; + ["token_txn_stddev_samp_order_by"]: ValueTypes["token_txn_stddev_samp_order_by"]; + ["token_txn_stream_cursor_input"]: ValueTypes["token_txn_stream_cursor_input"]; + ["token_txn_stream_cursor_value_input"]: ValueTypes["token_txn_stream_cursor_value_input"]; + ["token_txn_sum_order_by"]: ValueTypes["token_txn_sum_order_by"]; + ["token_txn_update_column"]: ValueTypes["token_txn_update_column"]; + ["token_txn_updates"]: ValueTypes["token_txn_updates"]; + ["token_txn_var_pop_order_by"]: ValueTypes["token_txn_var_pop_order_by"]; + ["token_txn_var_samp_order_by"]: ValueTypes["token_txn_var_samp_order_by"]; + ["token_txn_variance_order_by"]: ValueTypes["token_txn_variance_order_by"]; ["token_update_column"]: ValueTypes["token_update_column"]; ["token_updates"]: ValueTypes["token_updates"]; ["transactions_aggregate_bool_exp"]: ValueTypes["transactions_aggregate_bool_exp"]; diff --git a/packages/blockchain/src/solana/rpc.ts b/packages/blockchain/src/solana/rpc.ts index b4d053ac..c07a4937 100644 --- a/packages/blockchain/src/solana/rpc.ts +++ b/packages/blockchain/src/solana/rpc.ts @@ -1,4 +1,10 @@ -import { Network, SolCluster, TxnStatus, TxnType } from "@paybox/common"; +import { + Network, + SolCluster, + TokenTxn, + TxnStatus, + TxnType, +} from "@paybox/common"; import { Cluster, Connection, clusterApiUrl } from "@solana/web3.js"; export class SolRpc { @@ -24,6 +30,7 @@ export class SolRpc { if (txn === null) { return null; } + return { //@ts-ignore amount: txn.meta?.postBalances[0] - txn.meta?.preBalances[0], @@ -45,4 +52,32 @@ export class SolRpc { return null; } } + + async getTokenTxn(hash: string): Promise { + const txn = await this.connection.getParsedTransaction(hash); + if (txn === null) { + return null; + } + return { + amount: + //@ts-ignore + txn.meta?.postTokenBalances[0]?.uiTokenAmount?.uiAmount - + //@ts-ignore + txn.meta?.preTokenBalances[0]?.uiTokenAmount?.uiAmount, + blockHash: txn.transaction.message.recentBlockhash, + fromAta: + //@ts-ignore + txn.meta?.postTokenBalances.at(-1)?.owner || "", + //@ts-ignore + toAta: txn.meta?.postTokenBalances[0]?.owner, + fee: Number(txn.meta?.fee), + //@ts-ignore + token: txn.meta?.postTokenBalances[0]?.mint, + hash, + network: Network.Sol, + slot: txn.slot, + status: TxnStatus.Completed, + time: new Date().toISOString(), + }; + } } diff --git a/packages/common/src/types.ts b/packages/common/src/types.ts index 39dd1cf8..33dbe4dc 100644 --- a/packages/common/src/types.ts +++ b/packages/common/src/types.ts @@ -13,7 +13,13 @@ import { networkPublicKey, } from "./validations"; import { Message } from "@solana/web3.js"; -import { BitcoinCluster, EthCluster, SolCluster, USDCCluster } from "./enum"; +import { + BitcoinCluster, + EthCluster, + SolCluster, + TxnStatus, + USDCCluster, +} from "./enum"; import { Cluster } from "@solana/web3.js"; import { BitcoinChainId, @@ -289,3 +295,20 @@ export interface AddressBook { chain: Network; tag?: string; } + +export interface TokenTxn { + id?: string; + clientId: string; + hash: string; + blockHash: string; + fee: number; + amount: number; + fromAta: string; + toAta: string; + isMint: boolean; + token: string; + network: Network; + slot?: number; + status: TxnStatus; + time: string; +} diff --git a/packages/common/src/validations/token.ts b/packages/common/src/validations/token.ts index 4dd6d1db..ceeb44e0 100644 --- a/packages/common/src/validations/token.ts +++ b/packages/common/src/validations/token.ts @@ -8,3 +8,17 @@ export const TokenCreateSchema = z.object({ description: z.string().min(8).max(20), network: z.nativeEnum(Network), }); + +export const MintTokenSchema = z.object({ + mint: z.string(), + ata: publicKeyType, + tokens: z.number(), + authority: publicKeyType, + network: z.nativeEnum(Network), + username: z + .string() + .regex( + /^[a-z0-9_]{3,15}$/, + "should be between 3-15 characters and can only contain numbers, letters, and underscores.", + ), +});