// @generated by protoc-gen-es v2.4.0 with parameter "target=ts"
// @generated from file txncb.proto (package txncb, syntax proto3)
/* eslint-disable */

import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
import type { Decimal, QuoteKind, TokenLamports } from "./common_pb";
import { file_common } from "./common_pb";
import type { Message } from "@bufbuild/protobuf";

/**
 * Describes the file txncb.proto.
 */
export const file_txncb: GenFile = /*@__PURE__*/
  fileDesc("Cgt0eG5jYi5wcm90bxIFdHhuY2IigwEKDkxhbmRlZFR4blN0YXRlEh8KBmZhaWxlZBgBIAEoCzINLnR4bmNiLkZhaWxlZEgAEiUKCWNvbmZpcm1lZBgCIAEoCzIQLnR4bmNiLkNvbmZpcm1lZEgAEhsKBGxvc3QYAyABKAsyCy50eG5jYi5Mb3N0SABCDAoKc3RhdGVfdHlwZSI+CgRMb3N0EhIKCnNpZ25hdHVyZXMYASADKAkSFQoIb3JkZXJfaWQYAiABKANIAIgBAUILCglfb3JkZXJfaWQiiQEKBkZhaWxlZBIRCglzbG90X2RpZmYYASABKAUSHAoEdGlwcxgCIAEoCzIOLnR4bmNiLlR4blRpcHMSCgoCY3UYAyABKA0SCwoDZXJyGAQgASgJEhEKCXNpZ25hdHVyZRgFIAEoCRIVCghvcmRlcl9pZBgGIAEoA0gAiAEBQgsKCV9vcmRlcl9pZCKjAQoJQ29uZmlybWVkEhEKCXNsb3RfZGlmZhgBIAEoBRIiCgZ0cmFkZXMYAiADKAsyEi50eG5jYi5QYXJzZWRUcmFkZRIcCgR0aXBzGAMgASgLMg4udHhuY2IuVHhuVGlwcxIKCgJjdRgEIAEoDRIRCglzaWduYXR1cmUYBSABKAkSFQoIb3JkZXJfaWQYBiABKANIAIgBAUILCglfb3JkZXJfaWQiUwoLUGFyc2VkVHJhZGUSGQoDYnV5GAEgASgLMgoudHhuY2IuQnV5SAASGwoEc2VsbBgCIAEoCzILLnR4bmNiLlNlbGxIAEIMCgp0cmFkZV90eXBlIrsBCgNCdXkSDAoEbWludBgBIAEoCRIOCgZ0aWNrZXIYAiABKAkSIwoEYmFzZRgDIAEoCzIVLmNvbW1vbi5Ub2tlbkxhbXBvcnRzEg0KBXF1b3RlGAQgASgEEhsKAm1jGAUgASgLMg8uY29tbW9uLkRlY2ltYWwSHgoFcHJpY2UYBiABKAsyDy5jb21tb24uRGVjaW1hbBIlCgpxb3V0ZV9raW5kGAcgASgOMhEuY29tbW9uLlF1b3RlS2luZCK1AQoEU2VsbBIMCgRtaW50GAEgASgJEg4KBnRpY2tlchgCIAEoCRIlCgZ0b2tlbnMYAyABKAsyFS5jb21tb24uVG9rZW5MYW1wb3J0cxINCgVxdW90ZRgEIAEoBBIcCgNwbmwYBSABKAsyDy5jb21tb24uRGVjaW1hbBIbCgJtYxgGIAEoCzIPLmNvbW1vbi5EZWNpbWFsEh4KBXByaWNlGAcgASgLMg8uY29tbW9uLkRlY2ltYWwiKQoHVHhuVGlwcxIQCghwcmlvcml0eRgBIAEoBBIMCgRqaXRvGAIgASgEIiMKEFRyYW5zYWN0aW9uRXJyb3ISDwoHbWVzc2FnZRgBIAEoCWIGcHJvdG8z", [file_common]);

/**
 * @generated from message txncb.LandedTxnState
 */
export type LandedTxnState = Message<"txncb.LandedTxnState"> & {
  /**
   * @generated from oneof txncb.LandedTxnState.state_type
   */
  stateType: {
    /**
     * @generated from field: txncb.Failed failed = 1;
     */
    value: Failed;
    case: "failed";
  } | {
    /**
     * @generated from field: txncb.Confirmed confirmed = 2;
     */
    value: Confirmed;
    case: "confirmed";
  } | {
    /**
     * @generated from field: txncb.Lost lost = 3;
     */
    value: Lost;
    case: "lost";
  } | { case: undefined; value?: undefined };
};

/**
 * Describes the message txncb.LandedTxnState.
 * Use `create(LandedTxnStateSchema)` to create a new message.
 */
export const LandedTxnStateSchema: GenMessage<LandedTxnState> = /*@__PURE__*/
  messageDesc(file_txncb, 0);

/**
 * @generated from message txncb.Lost
 */
export type Lost = Message<"txncb.Lost"> & {
  /**
   * @generated from field: repeated string signatures = 1;
   */
  signatures: string[];

  /**
   * @generated from field: optional int64 order_id = 2;
   */
  orderId?: bigint;
};

/**
 * Describes the message txncb.Lost.
 * Use `create(LostSchema)` to create a new message.
 */
export const LostSchema: GenMessage<Lost> = /*@__PURE__*/
  messageDesc(file_txncb, 1);

/**
 * @generated from message txncb.Failed
 */
export type Failed = Message<"txncb.Failed"> & {
  /**
   * @generated from field: int32 slot_diff = 1;
   */
  slotDiff: number;

  /**
   * @generated from field: txncb.TxnTips tips = 2;
   */
  tips?: TxnTips;

  /**
   * @generated from field: uint32 cu = 3;
   */
  cu: number;

  /**
   * @generated from field: string err = 4;
   */
  err: string;

  /**
   * @generated from field: string signature = 5;
   */
  signature: string;

  /**
   * @generated from field: optional int64 order_id = 6;
   */
  orderId?: bigint;
};

/**
 * Describes the message txncb.Failed.
 * Use `create(FailedSchema)` to create a new message.
 */
export const FailedSchema: GenMessage<Failed> = /*@__PURE__*/
  messageDesc(file_txncb, 2);

/**
 * @generated from message txncb.Confirmed
 */
export type Confirmed = Message<"txncb.Confirmed"> & {
  /**
   * @generated from field: int32 slot_diff = 1;
   */
  slotDiff: number;

  /**
   * @generated from field: repeated txncb.ParsedTrade trades = 2;
   */
  trades: ParsedTrade[];

  /**
   * @generated from field: txncb.TxnTips tips = 3;
   */
  tips?: TxnTips;

  /**
   * @generated from field: uint32 cu = 4;
   */
  cu: number;

  /**
   * @generated from field: string signature = 5;
   */
  signature: string;

  /**
   * @generated from field: optional int64 order_id = 6;
   */
  orderId?: bigint;
};

/**
 * Describes the message txncb.Confirmed.
 * Use `create(ConfirmedSchema)` to create a new message.
 */
export const ConfirmedSchema: GenMessage<Confirmed> = /*@__PURE__*/
  messageDesc(file_txncb, 3);

/**
 * @generated from message txncb.ParsedTrade
 */
export type ParsedTrade = Message<"txncb.ParsedTrade"> & {
  /**
   * @generated from oneof txncb.ParsedTrade.trade_type
   */
  tradeType: {
    /**
     * @generated from field: txncb.Buy buy = 1;
     */
    value: Buy;
    case: "buy";
  } | {
    /**
     * @generated from field: txncb.Sell sell = 2;
     */
    value: Sell;
    case: "sell";
  } | { case: undefined; value?: undefined };
};

/**
 * Describes the message txncb.ParsedTrade.
 * Use `create(ParsedTradeSchema)` to create a new message.
 */
export const ParsedTradeSchema: GenMessage<ParsedTrade> = /*@__PURE__*/
  messageDesc(file_txncb, 4);

/**
 * @generated from message txncb.Buy
 */
export type Buy = Message<"txncb.Buy"> & {
  /**
   * @generated from field: string mint = 1;
   */
  mint: string;

  /**
   * @generated from field: string ticker = 2;
   */
  ticker: string;

  /**
   * @generated from field: common.TokenLamports base = 3;
   */
  base?: TokenLamports;

  /**
   * @generated from field: uint64 quote = 4;
   */
  quote: bigint;

  /**
   * @generated from field: common.Decimal mc = 5;
   */
  mc?: Decimal;

  /**
   * @generated from field: common.Decimal price = 6;
   */
  price?: Decimal;

  /**
   * @generated from field: common.QuoteKind qoute_kind = 7;
   */
  qouteKind: QuoteKind;
};

/**
 * Describes the message txncb.Buy.
 * Use `create(BuySchema)` to create a new message.
 */
export const BuySchema: GenMessage<Buy> = /*@__PURE__*/
  messageDesc(file_txncb, 5);

/**
 * @generated from message txncb.Sell
 */
export type Sell = Message<"txncb.Sell"> & {
  /**
   * @generated from field: string mint = 1;
   */
  mint: string;

  /**
   * @generated from field: string ticker = 2;
   */
  ticker: string;

  /**
   * @generated from field: common.TokenLamports tokens = 3;
   */
  tokens?: TokenLamports;

  /**
   * @generated from field: uint64 quote = 4;
   */
  quote: bigint;

  /**
   * @generated from field: common.Decimal pnl = 5;
   */
  pnl?: Decimal;

  /**
   * @generated from field: common.Decimal mc = 6;
   */
  mc?: Decimal;

  /**
   * @generated from field: common.Decimal price = 7;
   */
  price?: Decimal;
};

/**
 * Describes the message txncb.Sell.
 * Use `create(SellSchema)` to create a new message.
 */
export const SellSchema: GenMessage<Sell> = /*@__PURE__*/
  messageDesc(file_txncb, 6);

/**
 * @generated from message txncb.TxnTips
 */
export type TxnTips = Message<"txncb.TxnTips"> & {
  /**
   * @generated from field: uint64 priority = 1;
   */
  priority: bigint;

  /**
   * @generated from field: uint64 jito = 2;
   */
  jito: bigint;
};

/**
 * Describes the message txncb.TxnTips.
 * Use `create(TxnTipsSchema)` to create a new message.
 */
export const TxnTipsSchema: GenMessage<TxnTips> = /*@__PURE__*/
  messageDesc(file_txncb, 7);

/**
 * @generated from message txncb.TransactionError
 */
export type TransactionError = Message<"txncb.TransactionError"> & {
  /**
   * @generated from field: string message = 1;
   */
  message: string;
};

/**
 * Describes the message txncb.TransactionError.
 * Use `create(TransactionErrorSchema)` to create a new message.
 */
export const TransactionErrorSchema: GenMessage<TransactionError> = /*@__PURE__*/
  messageDesc(file_txncb, 8);

