//#endregion
//#region src/helpers/Signature.d.ts
declare class Signature {
  data: Uint8Array;
  recovery: number;
  private compressed;
  /**
   * Creates a new Signature instance.
   * @param data Raw signature data (64 bytes)
   * @param recovery Recovery byte (0-3)
   * @param compressed Whether signature is compressed (default: true)
   */
  constructor(data: Uint8Array, recovery: number, compressed?: boolean);
  /**
   * Creates a Signature from a hex string.
   * @param string 130-character hex string containing signature and recovery data
   * @returns New Signature instance
   * @throws Error if input is not a string
   */
  static from(string: string): Signature;
  /**
   * Converts signature to 65-byte buffer format.
   * @returns 65-byte buffer containing recovery byte + signature data
   */
  toBuffer(): Uint8Array<ArrayBuffer>;
  /**
   * Returns signature as 130-character hex string.
   * @returns Hex string representation of signature
   */
  customToString(): string;
  /**
   * Recovers the public key from this signature and message.
   * @param message 32-byte message hash (Uint8Array) or 64-character hex string
   * @returns PublicKey that created this signature
   * @throws Error if message is not a valid 32-byte SHA256 hash
   */
  getPublicKey(message: Uint8Array | string): PublicKey;
}
//#endregion
//#region src/helpers/PublicKey.d.ts
declare class PublicKey {
  key: Uint8Array;
  prefix: string;
  /**
   * Creates a new PublicKey instance from raw bytes.
   * @param key Raw public key bytes (33 bytes, compressed format)
   * @param prefix Optional address prefix (defaults to config.address_prefix)
   */
  constructor(key: Uint8Array, prefix?: string);
  /**
   * Creates a PublicKey from a string representation.
   * @param wif Public key string (e.g., "STM8m5UgaFAAYQRuaNejYdS8FVLVp9Ss3K1qAVk5de6F8s3HnVbvA")
   * @returns New PublicKey instance
   * @throws Error if the key format is invalid
   */
  static fromString(wif: string): PublicKey;
  /**
   * Creates a PublicKey from a string or returns the instance if already a PublicKey.
   * @param value Public key string or PublicKey instance
   * @returns New or existing PublicKey instance
   */
  static from(value: string | PublicKey): PublicKey;
  /**
   * Verifies a signature against a message hash.
   * @param message 32-byte message hash to verify
   * @param signature Signature to verify
   * @returns True if signature is valid, false otherwise
   */
  verify(message: Uint8Array, signature: Signature | string): boolean;
  /**
   * Returns the public key as a string for storage or transmission.
   * @returns Public key string with prefix (e.g., "STM8m5UgaFAAYQRuaNejYdS8FVLVp9Ss3K1qAVk5de6F8s3HnVbvA")
   */
  toString(): string;
  /**
   * Returns JSON representation (same as toString()).
   * @returns Public key string
   */
  toJSON(): string;
  /**
   * Returns a string representation for debugging.
   * @returns Formatted public key string
   */
  inspect(): string;
}
//#endregion
//#region src/helpers/PrivateKey.d.ts
type KeyRole = 'owner' | 'active' | 'posting' | 'memo';
/**
 * ECDSA (secp256k1) private key for signing and encryption operations.
 * Handles key generation, derivation from seeds/passwords, and cryptographic operations.
 *
 * All private keys are stored internally as Uint8Array and can be converted to/from
 * Wallet Import Format (WIF) strings for storage and transmission.
 *
 * @example
 * ```typescript
 * // From WIF string
 * const key = PrivateKey.from('5JdeC9P7Pbd1uGdFVEsJ41EkEnADbbHGq6p1BwFxm6txNBsQnsw')
 *
 * // Generate random key
 * const randomKey = PrivateKey.randomKey()
 *
 * // From username and password
 * const loginKey = PrivateKey.fromLogin('username', 'password')
 *
 * // Sign a message
 * const signature = key.sign(someHash)
 *
 * // Get public key
 * const pubKey = key.createPublic()
 * ```
 */
declare class PrivateKey {
  key: Uint8Array;
  constructor(key: Uint8Array);
  /**
   * Creates a PrivateKey instance from a WIF string or raw Uint8Array.
   * Automatically detects the input type and uses the appropriate method.
   *
   * @param value - WIF formatted string or raw 32-byte key as Uint8Array
   * @returns New PrivateKey instance
   * @throws Error if the key format is invalid
   */
  static from(value: string | Uint8Array): PrivateKey;
  /**
   * Creates a PrivateKey from a Wallet Import Format (WIF) encoded string.
   *
   * @param wif - WIF encoded private key string
   * @returns New PrivateKey instance
   * @throws Error if WIF format is invalid or checksum fails
   */
  static fromString(wif: string): PrivateKey;
  /**
   * Creates a PrivateKey from a seed string or Uint8Array.
   * The seed is hashed with SHA256 to produce the private key.
   *
   * @param seed - Seed string (converted to bytes) or raw byte array
   * @returns New PrivateKey instance derived from seed
   */
  static fromSeed(seed: string | Uint8Array): PrivateKey;
  /**
   * Derives a PrivateKey from username, password, and role using Hive's key derivation scheme.
   * This generates the same keys that the Hive wallet uses for login-based keys.
   *
   * @param username - Hive username
   * @param password - Master password (or seed phrase)
   * @param role - Key role ('owner', 'active', 'posting', 'memo')
   * @returns New PrivateKey instance for the specified role
   */
  static fromLogin(username: string, password: string, role?: KeyRole): PrivateKey;
  /**
   * Signs a 32-byte message hash using ECDSA and returns a recoverable signature.
   * The signature includes recovery information to allow public key recovery.
   *
   * @param message - 32-byte message hash to sign (Uint8Array)
   * @returns Signature object containing the signature data
   */
  sign(message: Uint8Array): Signature;
  /**
   * Derives the corresponding public key for this private key.
   *
   * @param prefix - Optional address prefix (defaults to config.address_prefix)
   * @returns PublicKey instance derived from this private key
   */
  createPublic(prefix?: string): PublicKey;
  /**
   * Returns the private key as a Wallet Import Format (WIF) encoded string.
   * This includes network ID and checksum for safe storage/transmission.
   *
   * @returns WIF encoded private key string
   */
  toString(): string;
  /**
   * Returns a masked representation of the private key for debugging/logging.
   * Shows only the first and last 6 characters to avoid accidental exposure.
   * Use toString() to get the full key for export/serialization.
   *
   * @returns Masked key representation for safe logging
   */
  inspect(): string;
  /**
   * Computes a shared secret using ECDH key exchange for memo encryption.
   * The shared secret is used as a key for AES encryption/decryption.
   *
   * @param publicKey - Other party's public key
   * @returns 64-byte shared secret as Uint8Array
   */
  getSharedSecret(publicKey: PublicKey): Uint8Array;
  /**
   * Generates a new cryptographically secure random private key.
   * Uses the secp256k1 key generation algorithm for security.
   * This method may take up to 250ms due to entropy collection.
   *
   * @returns New randomly generated PrivateKey instance
   */
  static randomKey(): PrivateKey;
}
//#endregion
//#region src/helpers/Asset.d.ts
/** Class representing a hive asset,
 * e.g. `1.000 HIVE` or `12.112233 VESTS`. */
declare class Asset {
  amount: number;
  symbol: string;
  constructor(amount: number, symbol: string);
  /** Create a new Asset instance from a string, e.g. `42.000 HIVE`. */
  static fromString(string: string, expectedSymbol?: string | null): Asset;
  /**
   * Convenience to create new Asset.
   * @param symbol Symbol to use when created from number. Will also be used to validate
   *               the asset, throws if the passed value has a different symbol than this.
   */
  static from(value: number | string | Asset, symbol?: string | null): Asset;
  /** Return asset precision. */
  getPrecision(): 3 | 6;
  /** Return a string representation of this asset, e.g. `42.000 HIVE`. */
  toString(): string;
  toJSON(): string;
}
//#endregion
//#region src/type_generators/types/balance.d.ts
interface paths$8 {
  '/accounts/{account-name}/balances': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Account balances
     * @description Lists account hbd, hive and vest balances
     *
     *     SQL example
     *     * `SELECT * FROM btracker_endpoints.get_account_balances('blocktrades');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/balance-api/accounts/blocktrades/balances'`
     */
    get: operations$7['btracker_endpoints.get_account_balances'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{account-name}/balance-history': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Historical balance change
     * @description History of change of `coin-type` balance in given block range
     *
     *     SQL example
     *     * `SELECT * FROM btracker_endpoints.get_balance_history('blocktrades', 37, 1 ,2);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/balance-api/accounts/blocktrades/balance-history?coin-type=VESTS&page-size=2'`
     */
    get: operations$7['btracker_endpoints.get_balance_history'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{account-name}/aggregated-history': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Aggregated account balance history
     * @description History of change of `coin-type` balance in given block range with granularity of day/month/year
     *
     *     SQL example
     *     * `SELECT * FROM btracker_endpoints.get_balance_aggregation('blocktrades', 'VESTS');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/balance-api/accounts/blocktrades/aggregated-history?coin-type=VESTS'`
     */
    get: operations$7['btracker_endpoints.get_balance_aggregation'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{account-name}/delegations': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Account delegations
     * @description List of incoming and outgoing delegations
     *
     *     SQL example
     *     * `SELECT * FROM btracker_endpoints.get_balance_delegations('blocktrades');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/balance-api/accounts/blocktrades/delegations'`
     */
    get: operations$7['btracker_endpoints.get_balance_delegations'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{account-name}/recurrent-transfers': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Account recurrent transfers
     * @description List of incoming and outgoing recurrent transfers
     *
     *     SQL example
     *     * `SELECT * FROM btracker_endpoints.get_recurrent_transfers('blocktrades');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/balance-api/accounts/blocktrades/recurrent-transfers'`
     */
    get: operations$7['btracker_endpoints.get_recurrent_transfers'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/top-holders': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Top asset holders with total number of account and pages.
     * @description Lists top holders for a given coin with Top asset holders with total number of account and pages to support pagination.
     *
     *     SQL example:
     *     * `SELECT * FROM btracker_endpoints.get_top_holders("HIVE","balance",1,100);`
     *
     *     REST call example:
     *     * `GET "https://rpc.mahdiyari.info/balance-api/top-holders?coin-type=HIVE&balance-type=balance&page=1&page-size=100"
     */
    get: operations$7['btracker_endpoints.get_top_holders'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/transfer-statistics': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Aggregated transfer statistics
     * @description History of amount of transfers per hour, day, month or year.
     *
     *     SQL example
     *     * `SELECT * FROM btracker_endpoints.get_transfer_statistics('HBD');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/balance-api/transfer-statistics'`
     */
    get: operations$7['btracker_endpoints.get_transfer_statistics'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/version': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get Balance tracker's version
     * @description Get Balance tracker's last commit hash (versions set by by hash value).
     *
     *     SQL example
     *     * `SELECT * FROM btracker_endpoints.get_btracker_version();`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/balance-api/version'`
     */
    get: operations$7['btracker_endpoints.get_btracker_version'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/last-synced-block': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get last block number synced by balance tracker
     * @description Get the block number of the last block synced by balance tracker.
     *
     *     SQL example
     *     * `SELECT * FROM btracker_endpoints.get_btracker_last_synced_block();`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/balance-api/last-synced-block'`
     */
    get: operations$7['btracker_endpoints.get_btracker_last_synced_block'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
}
interface components$5 {
  schemas: {
    /** @enum {string} */'btracker_backend.granularity': 'daily' | 'monthly' | 'yearly'; /** @enum {string} */
    'btracker_backend.granularity_hourly': 'hourly' | 'daily' | 'monthly' | 'yearly'; /** @enum {string} */
    'btracker_backend.nai_type': 'HBD' | 'HIVE' | 'VESTS'; /** @enum {string} */
    'btracker_backend.liquid_nai_type': 'HBD' | 'HIVE'; /** @enum {string} */
    'btracker_backend.balance_type': 'balance' | 'savings_balance'; /** @enum {string} */
    'btracker_backend.sort_direction': 'asc' | 'desc';
    'btracker_backend.balance': {
      /** @description number of HIVE backed dollars the account has */hbd_balance?: number; /** @description account's HIVE balance */
      hive_balance?: number; /** @description account's VEST balance */
      vesting_shares?: string; /** @description the VEST balance, presented in HIVE, is calculated based on the current HIVE price */
      vesting_balance_hive?: number; /** @description account's VEST balance - delegated VESTs + reveived VESTs, presented in HIVE,calculated based on the current HIVE price */
      post_voting_power_vests?: string; /** @description VESTS delegated to another user, account's power is lowered by delegated VESTS */
      delegated_vests?: string; /** @description VESTS received from another user, account's power is increased by received VESTS */
      received_vests?: string; /** @description rewards obtained by posting and commenting expressed in VEST */
      curation_rewards?: string; /** @description curator's reward expressed in VEST */
      posting_rewards?: string; /** @description not yet claimed HIVE backed dollars stored in hbd reward balance */
      hbd_rewards?: number; /** @description not yet claimed HIVE stored in hive reward balance */
      hive_rewards?: number; /** @description not yet claimed VESTS stored in vest reward balance */
      vests_rewards?: string; /** @description the reward vesting balance, denominated in HIVE, is determined by the prevailing HIVE price at the time of reward reception */
      hive_vesting_rewards?: number; /** @description saving balance of HIVE backed dollars */
      hbd_savings?: number; /** @description HIVE saving balance */
      hive_savings?: number; /** @description number representing how many payouts are pending from user's saving balance */
      savings_withdraw_requests?: number; /** @description received until the withdrawal is complete, with each installment amounting to 1/13 of the withdrawn total */
      vesting_withdraw_rate?: string; /** @description the remaining total VESTS needed to complete withdrawals */
      to_withdraw?: string; /** @description the total VESTS already withdrawn from active withdrawals */
      withdrawn?: string; /** @description list of account receiving the part of a withdrawal */
      withdraw_routes?: number; /** @description blocked VESTS by a withdrawal */
      delayed_vests?: string; /** @description total HBD currently pending conversion */
      conversion_pending_amount_hbd?: number; /** @description number of HBD conversion requests */
      conversion_pending_count_hbd?: number; /** @description total HIVE currently pending conversion */
      conversion_pending_amount_hive?: number; /** @description number of HIVE conversion requests */
      conversion_pending_count_hive?: number; /** @description count of open HBD orders */
      open_orders_hbd_count?: number; /** @description count of open HIVE orders */
      open_orders_hive_count?: number; /** @description total amount of HIVE in open orders */
      open_orders_hive_amount?: number; /** @description total amount of HBD in open orders */
      open_orders_hbd_amount?: number; /** @description total HBD currently pending transfer */
      savings_pending_amount_hbd?: number; /** @description total HIVE currently pending transfer */
      savings_pending_amount_hive?: number; /** @description total HBD currently locked in escrows (sender-view) */
      escrow_pending_amount_hbd?: number; /** @description total HIVE currently locked in escrows (sender-view) */
      escrow_pending_amount_hive?: number; /** @description number of distinct open escrows (sender-view) */
      escrow_pending_count?: number;
    };
    'btracker_backend.balances': {
      /** @description aggregated account's balance */balance?: string; /** @description aggregated account's savings balance */
      savings_balance?: string;
    };
    'btracker_backend.aggregated_history': {
      /**
       * Format: date-time
       * @description date of the balance aggregation
       */
      date?: string; /** @description aggregated account's balance */
      balance?: components$5['schemas']['btracker_backend.balances']; /** @description aggregated account's balance from the previous day/month/year */
      prev_balance?: components$5['schemas']['btracker_backend.balances']; /** @description minimum account's balance in the aggregation period */
      min_balance?: components$5['schemas']['btracker_backend.balances']; /** @description maximum account's balance in the aggregation period */
      max_balance?: components$5['schemas']['btracker_backend.balances'];
    };
    'btracker_backend.balance_history': {
      /** @description block number */block_num?: number; /** @description unique operation identifier with an encoded block number and operation type id */
      operation_id?: string; /** @description operation type identifier */
      op_type_id?: number; /** @description The closing balance */
      balance?: string; /** @description Balance in previous day/month/year */
      prev_balance?: string; /** @description Diffrence between balance and prev_balance */
      balance_change?: string;
      /**
       * Format: date-time
       * @description Creation date
       */
      timestamp?: string;
    };
    'btracker_backend.operation_history': {
      /** @description Total number of operations */total_operations?: number; /** @description Total number of pages */
      total_pages?: number; /** @description List of operation results */
      operations_result?: components$5['schemas']['btracker_backend.balance_history'][];
    };
    'btracker_backend.incoming_delegations': {
      /** @description account name of the delegator */delegator?: string; /** @description amount of vests delegated */
      amount?: string; /** @description unique operation identifier with an encoded block number and operation type id */
      operation_id?: string; /** @description block number */
      block_num?: number;
    };
    'btracker_backend.outgoing_delegations': {
      /** @description account name of the delegatee */delegatee?: string; /** @description amount of vests delegated */
      amount?: string; /** @description unique operation identifier with an encoded block number and operation type id */
      operation_id?: string; /** @description block number */
      block_num?: number;
    };
    'btracker_backend.delegations': {
      /** @description List of outgoing delegations from the account */outgoing_delegations?: components$5['schemas']['btracker_backend.outgoing_delegations'][]; /** @description List of incoming delegations to the account */
      incoming_delegations?: components$5['schemas']['btracker_backend.incoming_delegations'][];
    };
    'btracker_backend.amount': {
      nai?: string;
      amount?: string;
      precision?: number;
    };
    'btracker_backend.incoming_recurrent_transfers': {
      /** @description Account name of the sender */from?: string; /** @description ID of the pair of accounts */
      pair_id?: number; /** @description Amount of the transfer with NAI and precision */
      amount?: components$5['schemas']['btracker_backend.amount']; /** @description amount of consecutive failures */
      consecutive_failures?: number; /** @description Remaining executions */
      remaining_executions?: number; /** @description Recurrence in hours */
      recurrence?: number; /** @description Memo message */
      memo?: string;
      /**
       * Format: date-time
       * @description Date of the next trigger of the transfer
       */
      trigger_date?: string; /** @description Unique operation identifier with an encoded block number and operation type id */
      operation_id?: string; /** @description Block number */
      block_num?: number;
    };
    'btracker_backend.outgoing_recurrent_transfers': {
      /** @description Account name of the receiver */to?: string; /** @description ID of the pair of accounts */
      pair_id?: number; /** @description Amount of the transfer with NAI and precision */
      amount?: components$5['schemas']['btracker_backend.amount']; /** @description amount of consecutive failures */
      consecutive_failures?: number; /** @description Remaining executions */
      remaining_executions?: number; /** @description Recurrence in hours */
      recurrence?: number; /** @description Memo message */
      memo?: string;
      /**
       * Format: date-time
       * @description Date of the next trigger of the transfer
       */
      trigger_date?: string; /** @description Unique operation identifier with an encoded block number and operation type id */
      operation_id?: string; /** @description Block number */
      block_num?: number;
    };
    'btracker_backend.recurrent_transfers': {
      /** @description List of outgoing recurrent transfers from the account */outgoing_recurrent_transfers?: components$5['schemas']['btracker_backend.outgoing_recurrent_transfers'][]; /** @description List of incoming recurrent transfers to the account */
      incoming_recurrent_transfers?: components$5['schemas']['btracker_backend.incoming_recurrent_transfers'][];
    };
    'btracker_backend.transfer_stats': {
      /**
       * Format: date-time
       * @description the time transfers were included in the blockchain
       */
      date?: string; /** @description sum of a amount of transfered tokens in the period */
      total_transfer_amount?: string; /** @description average amount of transfered tokens in the period */
      average_transfer_amount?: string; /** @description maximum amount of transfered tokens in the period */
      maximum_transfer_amount?: string; /** @description minimum amount of transfered tokens in the period */
      minimum_transfer_amount?: string; /** @description number of transfers in the period */
      transfer_count?: number; /** @description last block number in time range */
      last_block_num?: number;
    };
    'btracker_backend.array_of_transfer_stats': components$5['schemas']['btracker_backend.transfer_stats'][];
    'btracker_backend.ranked_holder': {
      /** @description Position in the ranking */rank?: number; /** @description Account name */
      account?: string; /** @description Asset balance for that account */
      value?: string;
    };
    'btracker_backend.top_holders': {
      /** @description Total number of accounts that match */total_accounts?: number; /** @description Total number of pages (given requested page-size) */
      total_pages?: number; /** @description Ranked holders for the requested page */
      holders_result?: components$5['schemas']['btracker_backend.ranked_holder'][];
    };
    'btracker_backend.array_of_aggregated_history': components$5['schemas']['btracker_backend.aggregated_history'][];
  };
  responses: never;
  parameters: never;
  requestBodies: never;
  headers: never;
  pathItems: never;
}
interface operations$7 {
  'btracker_endpoints.get_account_balances': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /** @description Name of the account */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Account balances
       *     (VEST balances are represented as string due to json limitations)
       *
       *     * Returns `btracker_backend.balance`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "hbd_balance": 77246982,
           *       "hive_balance": 29594875,
           *       "vesting_shares": "8172549681941451",
           *       "vesting_balance_hive": 2720696229,
           *       "post_voting_power_vests": "8172549681941451",
           *       "delegated_vests": "0",
           *       "received_vests": "0",
           *       "curation_rewards": "196115157",
           *       "posting_rewards": "65916519",
           *       "hbd_rewards": 0,
           *       "hive_rewards": 0,
           *       "vests_rewards": "0",
           *       "hive_vesting_rewards": 0,
           *       "hbd_savings": 0,
           *       "hive_savings": 0,
           *       "savings_withdraw_requests": 0,
           *       "vesting_withdraw_rate": "80404818220529",
           *       "to_withdraw": "8362101094935031",
           *       "withdrawn": "804048182205290",
           *       "withdraw_routes": 4,
           *       "delayed_vests": "0",
           *       "conversion_pending_amount_hbd": 0,
           *       "conversion_pending_count_hbd": 0,
           *       "conversion_pending_amount_hive": 0,
           *       "conversion_pending_count_hive": 0,
           *       "open_orders_hbd_count": 0,
           *       "open_orders_hive_count": 0,
           *       "open_orders_hive_amount": 0,
           *       "open_orders_hbd_amount": 0,
           *       "savings_pending_amount_hbd": 0,
           *       "savings_pending_amount_hive": 0,
           *       "escrow_pending_amount_hbd": 0,
           *       "escrow_pending_amount_hive": 0,
           *       "escrow_pending_count": 0
           *     }
           */
          'application/json': components$5['schemas']['btracker_backend.balance'];
        };
      }; /** @description No such account in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'btracker_endpoints.get_balance_history': {
    parameters: {
      query: {
        /**
         * @description Coin types:
         *
         *     * HBD
         *
         *     * HIVE
         *
         *     * VESTS
         */
        'coin-type': components$5['schemas']['btracker_backend.nai_type'];
        /**
         * @description Balance types:
         *
         *     * balance
         *
         *     * savings_balance
         */
        'balance-type'?: components$5['schemas']['btracker_backend.balance_type'];
        /**
         * @description Return page on `page` number, default null due to reversed order of pages,
         *     the first page is the oldest,
         *     example: first call returns the newest page and total_pages is 100 - the newest page is number 100, next 99 etc.
         */
        page?: number; /** @description Return max `page-size` operations per page, defaults to `100` */
        'page-size'?: number;
        /**
         * @description Sort order:
         *
         *      * `asc` - Ascending, from oldest to newest
         *
         *      * `desc` - Descending, from newest to oldest
         */
        direction?: components$5['schemas']['btracker_backend.sort_direction'];
        /**
         * @description Lower limit of the block range, can be represented either by a block-number (integer) or a timestamp (in the format YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is more than or equal to the given `timestamp` (i.e. `block's created_at >= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'from-block'?: string;
        /**
         * @description Similar to the from-block parameter, can either be a block-number (integer) or a timestamp (formatted as YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will convert the value depending on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'to-block'?: string;
      };
      header?: never;
      path: {
        /** @description Name of the account */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Balance change
       *
       *     * Returns `btracker_backend.operation_history`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "total_operations": 188291,
           *       "total_pages": 94146,
           *       "operations_result": [
           *         {
           *           "block_num": 4999992,
           *           "operation_id": "21474802120262208",
           *           "op_type_id": 64,
           *           "balance": "8172549681941451",
           *           "prev_balance": "8172546678091286",
           *           "balance_change": "3003850165",
           *           "timestamp": "2016-09-15T19:46:57"
           *         },
           *         {
           *           "block_num": 4999959,
           *           "operation_id": "21474660386343488",
           *           "op_type_id": 64,
           *           "balance": "8172546678091286",
           *           "prev_balance": "8172543674223181",
           *           "balance_change": "3003868105",
           *           "timestamp": "2016-09-15T19:45:12"
           *         }
           *       ]
           *     }
           */
          'application/json': components$5['schemas']['btracker_backend.operation_history'];
        };
      }; /** @description No such account in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'btracker_endpoints.get_balance_aggregation': {
    parameters: {
      query: {
        /**
         * @description Coin types:
         *
         *     * HBD
         *
         *     * HIVE
         *
         *     * VESTS
         */
        'coin-type': components$5['schemas']['btracker_backend.nai_type'];
        /**
         * @description granularity types:
         *
         *     * daily
         *
         *     * monthly
         *
         *     * yearly
         */
        granularity?: components$5['schemas']['btracker_backend.granularity'];
        /**
         * @description Sort order:
         *
         *      * `asc` - Ascending, from oldest to newest
         *
         *      * `desc` - Descending, from newest to oldest
         */
        direction?: components$5['schemas']['btracker_backend.sort_direction'];
        /**
         * @description Lower limit of the block range, can be represented either by a block-number (integer) or a timestamp (in the format YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is more than or equal to the given `timestamp` (i.e. `block's created_at >= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'from-block'?: string;
        /**
         * @description Similar to the from-block parameter, can either be a block-number (integer) or a timestamp (formatted as YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will convert the value depending on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'to-block'?: string;
      };
      header?: never;
      path: {
        /** @description Name of the account */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Balance change
       *
       *     * Returns array of `btracker_backend.aggregated_history`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example [
           *       {
           *         "date": "2017-01-01T00:00:00",
           *         "balance": {
           *           "balance": "8172549681941451",
           *           "savings_balance": "0"
           *         },
           *         "prev_balance": {
           *           "balance": "0",
           *           "savings_balance": "0"
           *         },
           *         "min_balance": {
           *           "balance": "1000000000000",
           *           "savings_balance": "0"
           *         },
           *         "max_balance": {
           *           "balance": "8436182707535769",
           *           "savings_balance": "0"
           *         }
           *       }
           *     ]
           */
          'application/json': components$5['schemas']['btracker_backend.array_of_aggregated_history'];
        };
      }; /** @description No such account in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'btracker_endpoints.get_balance_delegations': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /** @description Name of the account */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Incoming and outgoing delegations
       *
       *     * Returns `btracker_backend.delegations`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "outgoing_delegations": [],
           *       "incoming_delegations": []
           *     }
           */
          'application/json': components$5['schemas']['btracker_backend.delegations'];
        };
      }; /** @description No such account in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'btracker_endpoints.get_recurrent_transfers': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /** @description Name of the account */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Incoming and outgoing recurrent transfers
       *
       *     * Returns `btracker_backend.recurrent_transfers`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "outgoing_recurrent_transfers": [],
           *       "incoming_recurrent_transfers": []
           *     }
           */
          'application/json': components$5['schemas']['btracker_backend.recurrent_transfers'];
        };
      }; /** @description No such account in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'btracker_endpoints.get_top_holders': {
    parameters: {
      query: {
        /**
         * @description * HBD
         *     * HIVE
         *     * VESTS
         */
        'coin-type': components$5['schemas']['btracker_backend.nai_type'];
        /**
         * @description `balance` or `savings_balance`
         *     (`savings_balance` not allowed with `VESTS`).
         */
        'balance-type'?: components$5['schemas']['btracker_backend.balance_type']; /** @description 1-based page number. */
        page?: number; /** @description Max results per page (capped by backend validator). */
        'page-size'?: number;
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /** @description Ranked holders with totals number of pages and acounts. */200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          'application/json': components$5['schemas']['btracker_backend.top_holders'];
        };
      }; /** @description Unsupported parameter combination */
      400: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'btracker_endpoints.get_transfer_statistics': {
    parameters: {
      query: {
        /**
         * @description Coin types:
         *
         *     * HBD
         *
         *     * HIVE
         */
        'coin-type': components$5['schemas']['btracker_backend.liquid_nai_type'];
        /**
         * @description granularity types:
         *
         *     * hourly
         *
         *     * daily
         *
         *     * monthly
         *
         *     * yearly
         */
        granularity?: components$5['schemas']['btracker_backend.granularity_hourly'];
        /**
         * @description Sort order:
         *
         *      * `asc` - Ascending, from oldest to newest
         *
         *      * `desc` - Descending, from newest to oldest
         */
        direction?: components$5['schemas']['btracker_backend.sort_direction'];
        /**
         * @description Lower limit of the block range, can be represented either by a block-number (integer) or a timestamp (in the format YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is more than or equal to the given `timestamp` (i.e. `block's created_at >= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'from-block'?: string;
        /**
         * @description Similar to the from-block parameter, can either be a block-number (integer) or a timestamp (formatted as YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will convert the value depending on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'to-block'?: string;
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Balance change
       *
       *     * Returns array of `btracker_backend.transfer_stats`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example [
           *       {
           *         "date": "2017-01-01T00:00:00",
           *         "total_transfer_amount": "69611921266",
           *         "average_transfer_amount": "1302405",
           *         "maximum_transfer_amount": "18000000",
           *         "minimum_transfer_amount": "1",
           *         "transfer_count": 54665,
           *         "last_block_num": 5000000
           *       }
           *     ]
           */
          'application/json': components$5['schemas']['btracker_backend.array_of_transfer_stats'];
        };
      }; /** @description No such account in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'btracker_endpoints.get_btracker_version': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Balance tracker version
       *
       *     * Returns `TEXT`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /** @example c2fed8958584511ef1a66dab3dbac8c40f3518f0 */'application/json': string;
        };
      }; /** @description App not installed */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'btracker_endpoints.get_btracker_last_synced_block': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Last synced block by balance tracker
       *
       *     * Returns `INT`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /** @example 5000000 */'application/json': number;
        };
      }; /** @description No blocks synced */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
}
//#endregion
//#region src/type_generators/types/hafah.d.ts
interface paths$7 {
  '/blocks': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get block details in range
     * @description Retrieve a range of full, signed blocks.
     *     The list may be shorter than requested if count blocks would take you past the current head block.
     *
     *     SQL example
     *     * `SELECT * FROM hafah_endpoints.get_block_range(4999999,5000000);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/blocks?from-block=4999999&to-block=5000000'`
     */
    get: operations$6['hafah_endpoints.get_block_range'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/blocks/{block-num}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get block details
     * @description Retrieve a full, signed block of the referenced block, or null if no matching block was found.
     *
     *     SQL example
     *     * `SELECT * FROM hafah_endpoints.get_block(5000000);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/blocks/5000000'`
     */
    get: operations$6['hafah_endpoints.get_block'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/blocks/{block-num}/header': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get block header of the referenced block
     * @description Retrieve a block header of the referenced block, or null if no matching block was found.
     *
     *     SQL example
     *     * `SELECT * FROM hafah_endpoints.get_block_header(500000);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/blocks/500000/header'`
     */
    get: operations$6['hafah_endpoints.get_block_header'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/blocks/{block-num}/operations': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get operations in block
     * @description List the operations in the specified order that are within the given block number.
     *     The page size determines the number of operations per page
     *
     *     SQL example
     *     * `SELECT * FROM hafah_endpoints.get_ops_by_block_paging(5000000,'5,64');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/blocks/5000000/operations?operation-types=80&path-filter=value.creator=steem'`
     */
    get: operations$6['hafah_endpoints.get_ops_by_block_paging'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/operations': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get operations in a block range
     * @description Returns all operations contained in specified block range, supports various forms of filtering.
     *
     *     SQL example
     *     * `SELECT * FROM hafah_endpoints.get_operations(4999999,5000000);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/operations?from-block=4999999&to-block=5000000&operation-group-type=virtual'`
     */
    get: operations$6['hafah_endpoints.get_operations'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/operations/{operation-id}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * lookup an operation by its id.
     * @description Get operation's body and its extended parameters
     *
     *     SQL example
     *     * `SELECT * FROM hafah_endpoints.get_operation(3448858738752);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/operations/3448858738752'`
     */
    get: operations$6['hafah_endpoints.get_operation'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/operation-types': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Lookup operation type ids for operations matching a partial operation name.
     * @description Lookup operation type ids for operations matching a partial operation name.
     *
     *     SQL example
     *     * `SELECT * FROM hafah_endpoints.get_op_types('author');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/operation-types?partial-operation-name=author'`
     */
    get: operations$6['hafah_endpoints.get_op_types'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/operation-types/{type-id}/keys': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Returns key names for an operation type.
     * @description Returns json body keys for an operation type
     *
     *     SQL example
     *     * `SELECT * FROM hafah_endpoints.get_operation_keys(1);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/operation-types/1/keys'`
     */
    get: operations$6['hafah_endpoints.get_operation_keys'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/transactions/{transaction-id}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Lookup a transaction's details from its transaction id.
     * @description Returns the details of a transaction based on a transaction id (including its signatures,
     *     operations, and containing block number).
     *
     *     SQL example
     *     * `SELECT * FROM hafah_endpoints.get_transaction('954f6de36e6715d128fa8eb5a053fc254b05ded0');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/transactions/954f6de36e6715d128fa8eb5a053fc254b05ded0'`
     */
    get: operations$6['hafah_endpoints.get_transaction'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{account-name}/operations': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get operations for an account by recency.
     * @description List the operations in reversed order (first page is the oldest) for given account.
     *     The page size determines the number of operations per page.
     *
     *     SQL example
     *     * `SELECT * FROM hafah_endpoints.get_ops_by_account('blocktrades');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/accounts/blocktrades/operations?page-size=3'`
     */
    get: operations$6['hafah_endpoints.get_ops_by_account'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{account-name}/operation-types': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Lists all types of operations that account has performed
     * @description Lists all types of operations that the account has performed since its creation
     *
     *     SQL example
     *     * `SELECT * FROM hafah_endpoints.get_acc_op_types('blocktrades');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/accounts/blocktrades/operations/types'`
     */
    get: operations$6['hafah_endpoints.get_acc_op_types'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/market-history/trade-history': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Returns the trade history for the internal HBD:HIVE market.
     * @description SQL example
     *     * `SELECT * FROM hafah_endpoints.get_trade_history('2016-08-15 19:47:21', '2016-09-15 19:47:21',1000);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/market-history/trade-history?result-limit=100&from-block=2016-08-15 19:47:21&to-block==2016-09-15 19:47:21'`
     */
    get: operations$6['hafah_endpoints.get_trade_history'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/market-history/recent-trades': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Returns the most recent trades for the internal HBD:HIVE market.
     * @description SQL example
     *     * `SELECT * FROM hafah_endpoints.get_recent_trades(1000);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/market-history/recent-trades?result-limit=1000'`
     */
    get: operations$6['hafah_endpoints.get_recent_trades'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/version': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * hafah's version
     * @description Get hafah's last commit hash (hash is used for versioning).
     *
     *     SQL example
     *     * `SELECT * FROM hafah_endpoints.get_version();`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/version'`
     */
    get: operations$6['hafah_endpoints.get_version'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/headblock': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get last synced block in the HAF database.
     * @description Get last synced block in the HAF database
     *
     *     SQL example
     *     * `SELECT * FROM hafah_endpoints.get_head_block_num();`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/headblock'`
     */
    get: operations$6['hafah_endpoints.get_head_block_num'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/global-state': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Reports global state information at the given block.
     * @description Reports dgpo-style data for a given block.
     *
     *     SQL example
     *     * `SELECT * FROM hafah_endpoints.get_global_state(5000000);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafah-api/global-state?block-num=5000000'`
     */
    get: operations$6['hafah_endpoints.get_global_state'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
}
interface components$4 {
  schemas: {
    'hafah_backend.op_types': {
      /** @description operation type id */op_type_id?: number; /** @description operation type name */
      operation_name?: string; /** @description true if operation is virtual */
      is_virtual?: boolean;
    }; /** @enum {string} */
    'hafah_backend.operation_group_types': 'virtual' | 'real' | 'all';
    'hafah_backend.block_range_type': {
      from?: number;
      to?: number;
    };
    'hafah_backend.operation_body': {
      type?: string;
      value?: Record<string, never>;
    };
    'hafah_backend.array_of_operations': components$4['schemas']['hafah_backend.operation_body'][];
    'hafah_backend.operation': {
      /** @description operation body */op?: components$4['schemas']['hafah_backend.operation_body']; /** @description block containing the operation */
      block?: number; /** @description hash of the transaction */
      trx_id?: string; /** @description operation identifier that indicates its sequence number in transaction */
      op_pos?: number; /** @description operation type identifier */
      op_type_id?: number;
      /**
       * Format: date-time
       * @description creation date
       */
      timestamp?: string; /** @description true if is a virtual operation */
      virtual_op?: boolean; /** @description unique operation identifier with an encoded block number and operation type id */
      operation_id?: string; /** @description transaction identifier that indicates its sequence number in block */
      trx_in_block?: number;
    };
    'hafah_backend.operation_history': {
      /** @description Total number of operations */total_operations?: number; /** @description Total number of pages */
      total_pages?: number; /** @description List of operation results */
      operations_result?: components$4['schemas']['hafah_backend.operation'][];
    };
    'hafah_backend.account_operation_history': {
      /** @description Total number of operations */total_operations?: number; /** @description Total number of pages */
      total_pages?: number; /** @description Range of blocks that contains the returned pages */
      block_range?: components$4['schemas']['hafah_backend.block_range_type']; /** @description List of operation results */
      operations_result?: components$4['schemas']['hafah_backend.operation'][];
    };
    'hafah_backend.operations_in_block_range': {
      /** @description Lower bound for the next block number */next_block_range_begin?: number; /** @description Lower bound for the next operation id */
      next_operation_begin?: string; /** @description List of operation results */
      ops?: components$4['schemas']['hafah_backend.operation'][];
    }; /** @enum {string} */
    'hafah_backend.sort_direction': 'asc' | 'desc';
    'hafah_backend.extensions': {
      type?: string;
      value?: string;
    }[];
    'hafah_backend.block': {
      /** @description block number */block_num?: number; /** @description block hash in a blockchain is a unique, fixed-length string generated  by applying a cryptographic hash function to a block's contents */
      hash?: string; /** @description hash of a previous block */
      prev?: string; /** @description account name of block's producer */
      producer_account?: string; /** @description single hash representing the combined hashes of all transactions in a block */
      transaction_merkle_root?: string; /** @description various additional data/parameters related to the subject at hand. Most often, there's nothing specific, but it's a mechanism for extending various functionalities where something might appear in the future. */
      extensions?: components$4['schemas']['hafah_backend.extensions']; /** @description witness signature */
      witness_signature?: string; /** @description it refers to the public key of the witness used for signing blocks and other witness operations */
      signing_key?: string; /** @description the interest rate on HBD in savings, expressed in basis points (previously for each HBD), is one of the values determined by the witnesses */
      hbd_interest_rate?: number; /** @description the balance of the "counterweight" for these VESTS (total_vesting_shares) in the form of HIVE  (the price of VESTS is derived from these two values). A portion of the inflation is added to the balance, ensuring that each block corresponds to more HIVE for the VESTS */
      total_vesting_fund_hive?: string; /** @description the total amount of VEST present in the system */
      total_vesting_shares?: string; /** @description deprecated after HF17 */
      total_reward_fund_hive?: string; /** @description the total amount of HIVE, including the HIVE that would be generated from converting HBD to HIVE at the current price */
      virtual_supply?: string; /** @description the total amount of HIVE present in the system */
      current_supply?: string; /** @description the total amount of HBD present in the system, including what is in the treasury */
      current_hbd_supply?: string; /** @description the dhf_interval_ledger is a temporary HBD balance. Each block allocates a portion of inflation for proposal payouts, but these payouts occur every hour. To avoid cluttering the history with small amounts each block,  the new funds are first accumulated in the dhf_interval_ledger. Then, every HIVE_PROPOSAL_MAINTENANCE_PERIOD, the accumulated funds are transferred to the treasury account (this operation generates the virtual operation dhf_funding_operation), from where they are subsequently paid out to the approved proposals */
      dhf_interval_ledger?: number;
      /**
       * Format: date-time
       * @description the timestamp when the block was created
       */
      created_at?: string;
    };
    'hafah_backend.block_header': {
      /** @description hash of a previous block */previous?: string;
      /**
       * Format: date-time
       * @description the timestamp when the block was created
       */
      timestamp?: string; /** @description account name of block's producer */
      witness?: string; /** @description single hash representing the combined hashes of all transactions in a block */
      transaction_merkle_root?: string; /** @description various additional data/parameters related to the subject at hand. Most often, there's nothing specific, but it's a mechanism for extending various functionalities where something might appear in the future. */
      extensions?: components$4['schemas']['hafah_backend.extensions'];
    };
    'hafah_backend.transactions': {
      ref_block_num?: number;
      ref_block_prefix?: number;
      expiration?: string;
      operations?: components$4['schemas']['hafah_backend.array_of_operations'];
      extensions?: components$4['schemas']['hafah_backend.extensions'];
      signatures?: string[];
    };
    'hafah_backend.block_range': {
      /** @description hash of a previous block */previous?: string;
      /**
       * Format: date-time
       * @description the timestamp when the block was created
       */
      timestamp?: string; /** @description account name of block's producer */
      witness?: string; /** @description single hash representing the combined hashes of all transactions in a block */
      transaction_merkle_root?: string; /** @description various additional data/parameters related to the subject at hand. Most often, there's nothing specific, but it's a mechanism for extending various functionalities where something might appear in the future. */
      extensions?: components$4['schemas']['hafah_backend.extensions']; /** @description witness signature */
      witness_signature?: string; /** @description transactions in the block */
      transactions?: components$4['schemas']['hafah_backend.transactions']; /** @description block hash in a blockchain is a unique, fixed-length string generated  by applying a cryptographic hash function to a block's contents */
      block_id?: string; /** @description it refers to the public key of the witness used for signing blocks and other witness operations */
      signing_key?: string;
      transaction_ids?: string[];
    };
    'hafah_backend.transaction': {
      /** @description transactions in the block */transaction_json?: components$4['schemas']['hafah_backend.transactions']; /** @description hash of the transaction */
      transaction_id?: string; /** @description block number */
      block_num?: number; /** @description transaction identifier that indicates its sequence number in block */
      transaction_num?: number;
      /**
       * Format: date-time
       * @description the timestamp when the block was created
       */
      timestamp?: string;
    };
    'hafah_backend.nai_object': {
      /** @description String representation of a NAI (Network Asset Identifier) */nai?: string; /** @description Amount of the asset */
      amount?: string; /** @description Precision of the asset */
      precision?: number;
    };
    'hafah_backend.fill_order': {
      current_pays?: components$4['schemas']['hafah_backend.nai_object']; /** Format: date-time */
      date?: string;
      maker?: string;
      open_pays?: components$4['schemas']['hafah_backend.nai_object'];
      taker?: string;
    };
    'hafah_backend.array_of_fill_order': components$4['schemas']['hafah_backend.fill_order'][]; /** @enum {string} */
    'hafah_backend.participation_mode': 'include' | 'exclude' | 'all';
    'hafah_backend.array_of_block_range': components$4['schemas']['hafah_backend.block_range'][];
    'hafah_backend.array_of_op_types': components$4['schemas']['hafah_backend.op_types'][];
    'hafah_backend.version_type': {
      /** @description Application name */app_name?: string; /** @description Last commit hash */
      commit?: string;
    };
  };
  responses: never;
  parameters: never;
  requestBodies: never;
  headers: never;
  pathItems: never;
}
interface operations$6 {
  'hafah_endpoints.get_block_range': {
    parameters: {
      query: {
        /**
         * @description Lower limit of the block range, can be represented either by a block-number (integer) or a timestamp (in the format YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is more than or equal to the given `timestamp` (i.e. `block's created_at >= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'from-block': string;
        /**
         * @description Similar to the from-block parameter, can either be a block-number (integer) or a timestamp (formatted as YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will convert the value depending on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'to-block': string;
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /** @description * Returns array of `hafah_backend.block_range` */200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example [
           *       {
           *         "witness": "smooth.witness",
           *         "block_id": "004c4b3fc6a8735b4ab5433d59f4526e4a042644",
           *         "previous": "004c4b3e03ea2eac2494790786bfb9e41a8669d9",
           *         "timestamp": "2016-09-15T19:47:18",
           *         "extensions": [],
           *         "signing_key": "STM5jtPaM5G2jemsqTY8xYgy3CVUgzygKn7vUVpFozr6nWcCJ8mDW",
           *         "transactions": [
           *           {
           *             "expiration": "2016-09-15T19:47:27",
           *             "extensions": [],
           *             "operations": [
           *               {
           *                 "type": "vote_operation",
           *                 "value": {
           *                   "voter": "rkpl",
           *                   "author": "thedevil",
           *                   "weight": -10000,
           *                   "permlink": "re-rkpl-how-to-make-a-good-picture-of-the-moon-my-guide-and-photos-20160915t193128824z"
           *                 }
           *               }
           *             ],
           *             "signatures": [
           *               "2046cca841a2c84caf416ccec47f4d894732236505c21964ca092a4bf83b755979402486e49f4f6c116fc7e8d8525df14592d2993365b54ac26cb4bc52d3611e50"
           *             ],
           *             "ref_block_num": 19245,
           *             "ref_block_prefix": 325640405
           *           },
           *           {
           *             "expiration": "2016-09-15T19:47:45",
           *             "extensions": [],
           *             "operations": [
           *               {
           *                 "type": "limit_order_cancel_operation",
           *                 "value": {
           *                   "owner": "cvk",
           *                   "orderid": 1473968539
           *                 }
           *               }
           *             ],
           *             "signatures": [
           *               "20388171dcf8401b9ca74a79991fa2aaeff26729a28c3acb5510663a930e51f15e180e712e0e7fd3a65b2082ea89583b5155239259fc37c9a0c2b0ec4aacfb6963"
           *             ],
           *             "ref_block_num": 19262,
           *             "ref_block_prefix": 2888755715
           *           },
           *           {
           *             "expiration": "2016-09-15T20:47:15",
           *             "extensions": [],
           *             "operations": [
           *               {
           *                 "type": "pow2_operation",
           *                 "value": {
           *                   "work": {
           *                     "type": "pow2",
           *                     "value": {
           *                       "input": {
           *                         "nonce": "12906882138532220661",
           *                         "prev_block": "004c4b3e03ea2eac2494790786bfb9e41a8669d9",
           *                         "worker_account": "rabbit-25"
           *                       },
           *                       "pow_summary": 3818441282
           *                     }
           *                   },
           *                   "props": {
           *                     "hbd_interest_rate": 1000,
           *                     "maximum_block_size": 131072,
           *                     "account_creation_fee": {
           *                       "nai": "@@000000021",
           *                       "amount": "10000",
           *                       "precision": 3
           *                     }
           *                   }
           *                 }
           *               }
           *             ],
           *             "signatures": [
           *               "200cecb32d535041c061ea00ec8092c4ab12bf1453035c52987beffb53099f4d5045b29946037b15f9cdde3cbbe0f6e72b8f2f42027cafbeeee54cb8e780f8b07f"
           *             ],
           *             "ref_block_num": 19262,
           *             "ref_block_prefix": 2888755715
           *           },
           *           {
           *             "expiration": "2016-09-15T19:47:45",
           *             "extensions": [],
           *             "operations": [
           *               {
           *                 "type": "limit_order_cancel_operation",
           *                 "value": {
           *                   "owner": "paco-steem",
           *                   "orderid": 1243424767
           *                 }
           *               }
           *             ],
           *             "signatures": [
           *               "1f7de4d1ea38b5ddb2de499242aacc92d3fff529a74264c568114a48bf4182e4e775bd757cd718cb31b92017279bc781d7282be48abf615aa856bf6828a53b7fe1"
           *             ],
           *             "ref_block_num": 19262,
           *             "ref_block_prefix": 2888755715
           *           }
           *         ],
           *         "transaction_ids": [
           *           "9f4639be729f8ca436ac5bd01b5684cbc126d44d",
           *           "8f2a70dbe09902473eac39ffbd8ff626cb49bb51",
           *           "a9596ee741bd4b4b7d3d8cadd15416bfe854209e",
           *           "b664e368d117e0b0d4b1b32325a18044f47b5ca5"
           *         ],
           *         "witness_signature": "1f4a3e6e868c4b729790e64b0656cf12996f35010dd07b535a502b019080c849c75f370642b00e302d003def5e6b2280246b08ee8ab37824af4664ab740a79b940",
           *         "transaction_merkle_root": "708e4d6a2a722ef7fecc58d1f177a2826e54edd3"
           *       },
           *       {
           *         "witness": "ihashfury",
           *         "block_id": "004c4b40245ffb07380a393fb2b3d841b76cdaec",
           *         "previous": "004c4b3fc6a8735b4ab5433d59f4526e4a042644",
           *         "timestamp": "2016-09-15T19:47:21",
           *         "extensions": [],
           *         "signing_key": "STM8aUs6SGoEmNYMd3bYjE1UBr6NQPxGWmTqTdBaxJYSx244edSB2",
           *         "transactions": [
           *           {
           *             "expiration": "2016-09-15T19:47:33",
           *             "extensions": [],
           *             "operations": [
           *               {
           *                 "type": "account_create_operation",
           *                 "value": {
           *                   "fee": {
           *                     "nai": "@@000000021",
           *                     "amount": "10000",
           *                     "precision": 3
           *                   },
           *                   "owner": {
           *                     "key_auths": [
           *                       [
           *                         "STM871wj5KKnbwwiRv3scVcxQ26ynPnE1uaZr6dPpqVu9F4zJZgjZ",
           *                         1
           *                       ]
           *                     ],
           *                     "account_auths": [],
           *                     "weight_threshold": 1
           *                   },
           *                   "active": {
           *                     "key_auths": [
           *                       [
           *                         "STM73bAnWEwkdUa7Lp4ovNzyu4soHUCaCNSz79YHQsDqscNdSe1E8",
           *                         1
           *                       ]
           *                     ],
           *                     "account_auths": [],
           *                     "weight_threshold": 1
           *                   },
           *                   "creator": "steem",
           *                   "posting": {
           *                     "key_auths": [
           *                       [
           *                         "STM7fXKrnQN3xhgFTQBFMgR9TU8CxfgAJrLvSDjGuM2bFkiuKfwZg",
           *                         1
           *                       ]
           *                     ],
           *                     "account_auths": [],
           *                     "weight_threshold": 1
           *                   },
           *                   "memo_key": "STM8i93Zznxu2QRNLCHBDXt5yyiMW1c3GEyVKV9XAs8H5wEWwdJaM",
           *                   "json_metadata": "",
           *                   "new_account_name": "kefadex"
           *                 }
           *               }
           *             ],
           *             "signatures": [
           *               "1f63c75cc966916ea705a6fdef0821a810bdabb07118a3721f4cd52c972b9e4522534248c45ac908c1498752165a1d937eaf55ab6c028d7ee0ad893d3d4330d066"
           *             ],
           *             "ref_block_num": 19263,
           *             "ref_block_prefix": 1534306502
           *           },
           *           {
           *             "expiration": "2016-09-15T19:47:48",
           *             "extensions": [],
           *             "operations": [
           *               {
           *                 "type": "limit_order_create_operation",
           *                 "value": {
           *                   "owner": "cvk",
           *                   "orderid": 1473968838,
           *                   "expiration": "2035-10-29T06:32:22",
           *                   "fill_or_kill": false,
           *                   "amount_to_sell": {
           *                     "nai": "@@000000021",
           *                     "amount": "10324",
           *                     "precision": 3
           *                   },
           *                   "min_to_receive": {
           *                     "nai": "@@000000013",
           *                     "amount": "6819",
           *                     "precision": 3
           *                   }
           *                 }
           *               }
           *             ],
           *             "signatures": [
           *               "203e8ef6d16005180dc06756462bd867513a929bc4fa7c45f24ca2b0763cafdb06678812d777216f46d205e68a740dd19e32a1aa1a1df022500c0f1ef97800d0e0"
           *             ],
           *             "ref_block_num": 19263,
           *             "ref_block_prefix": 1534306502
           *           }
           *         ],
           *         "transaction_ids": [
           *           "6707feb450da66dc223ab5cb3e259937b2fef6bf",
           *           "973290d26bac31335c000c7a3d3fe058ce3dbb9f"
           *         ],
           *         "witness_signature": "1f6aa1c6311c768b5225b115eaf5798e5f1d8338af3970d90899cd5ccbe38f6d1f7676c5649bcca18150cbf8f07c0cc7ec3ae40d5936cfc6d5a650e582ba0f8002",
           *         "transaction_merkle_root": "97a8f2b04848b860f1792dc07bf58efcb15aeb8c"
           *       }
           *     ]
           */
          'application/json': components$4['schemas']['hafah_backend.array_of_block_range'];
        };
      };
    };
  };
  'hafah_endpoints.get_block': {
    parameters: {
      query?: {
        /** @description If true, virtual operations will be included. */'include-virtual'?: boolean;
      };
      header?: never;
      path: {
        /**
         * @description Given block, can be represented either by a `block-num` (integer) or a `timestamp` (in the format `YYYY-MM-DD HH:MI:SS`),
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'block-num': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /** @description * Returns `hafah_backend.block_range` */200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "witness": "ihashfury",
           *       "block_id": "004c4b40245ffb07380a393fb2b3d841b76cdaec",
           *       "previous": "004c4b3fc6a8735b4ab5433d59f4526e4a042644",
           *       "timestamp": "2016-09-15T19:47:21",
           *       "extensions": [],
           *       "signing_key": "STM8aUs6SGoEmNYMd3bYjE1UBr6NQPxGWmTqTdBaxJYSx244edSB2",
           *       "transactions": [
           *         {
           *           "expiration": "2016-09-15T19:47:33",
           *           "extensions": [],
           *           "operations": [
           *             {
           *               "type": "account_create_operation",
           *               "value": {
           *                 "fee": {
           *                   "nai": "@@000000021",
           *                   "amount": "10000",
           *                   "precision": 3
           *                 },
           *                 "owner": {
           *                   "key_auths": [
           *                     [
           *                       "STM871wj5KKnbwwiRv3scVcxQ26ynPnE1uaZr6dPpqVu9F4zJZgjZ",
           *                       1
           *                     ]
           *                   ],
           *                   "account_auths": [],
           *                   "weight_threshold": 1
           *                 },
           *                 "active": {
           *                   "key_auths": [
           *                     [
           *                       "STM73bAnWEwkdUa7Lp4ovNzyu4soHUCaCNSz79YHQsDqscNdSe1E8",
           *                       1
           *                     ]
           *                   ],
           *                   "account_auths": [],
           *                   "weight_threshold": 1
           *                 },
           *                 "creator": "steem",
           *                 "posting": {
           *                   "key_auths": [
           *                     [
           *                       "STM7fXKrnQN3xhgFTQBFMgR9TU8CxfgAJrLvSDjGuM2bFkiuKfwZg",
           *                       1
           *                     ]
           *                   ],
           *                   "account_auths": [],
           *                   "weight_threshold": 1
           *                 },
           *                 "memo_key": "STM8i93Zznxu2QRNLCHBDXt5yyiMW1c3GEyVKV9XAs8H5wEWwdJaM",
           *                 "json_metadata": "",
           *                 "new_account_name": "kefadex"
           *               }
           *             }
           *           ],
           *           "signatures": [
           *             "1f63c75cc966916ea705a6fdef0821a810bdabb07118a3721f4cd52c972b9e4522534248c45ac908c1498752165a1d937eaf55ab6c028d7ee0ad893d3d4330d066"
           *           ],
           *           "ref_block_num": 19263,
           *           "ref_block_prefix": 1534306502
           *         },
           *         {
           *           "expiration": "2016-09-15T19:47:48",
           *           "extensions": [],
           *           "operations": [
           *             {
           *               "type": "limit_order_create_operation",
           *               "value": {
           *                 "owner": "cvk",
           *                 "orderid": 1473968838,
           *                 "expiration": "2035-10-29T06:32:22",
           *                 "fill_or_kill": false,
           *                 "amount_to_sell": {
           *                   "nai": "@@000000021",
           *                   "amount": "10324",
           *                   "precision": 3
           *                 },
           *                 "min_to_receive": {
           *                   "nai": "@@000000013",
           *                   "amount": "6819",
           *                   "precision": 3
           *                 }
           *               }
           *             }
           *           ],
           *           "signatures": [
           *             "203e8ef6d16005180dc06756462bd867513a929bc4fa7c45f24ca2b0763cafdb06678812d777216f46d205e68a740dd19e32a1aa1a1df022500c0f1ef97800d0e0"
           *           ],
           *           "ref_block_num": 19263,
           *           "ref_block_prefix": 1534306502
           *         }
           *       ],
           *       "transaction_ids": [
           *         "6707feb450da66dc223ab5cb3e259937b2fef6bf",
           *         "973290d26bac31335c000c7a3d3fe058ce3dbb9f"
           *       ],
           *       "witness_signature": "1f6aa1c6311c768b5225b115eaf5798e5f1d8338af3970d90899cd5ccbe38f6d1f7676c5649bcca18150cbf8f07c0cc7ec3ae40d5936cfc6d5a650e582ba0f8002",
           *       "transaction_merkle_root": "97a8f2b04848b860f1792dc07bf58efcb15aeb8c"
           *     }
           */
          'application/json': components$4['schemas']['hafah_backend.block_range'];
        };
      };
    };
  };
  'hafah_endpoints.get_block_header': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /**
         * @description Given block, can be represented either by a `block-num` (integer) or a `timestamp` (in the format `YYYY-MM-DD HH:MI:SS`),
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'block-num': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /** @description * Returns `hafah_backend.block_header` */200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "witness": "ihashfury",
           *       "previous": "004c4b3fc6a8735b4ab5433d59f4526e4a042644",
           *       "timestamp": "2016-09-15T19:47:21",
           *       "extensions": [],
           *       "transaction_merkle_root": "97a8f2b04848b860f1792dc07bf58efcb15aeb8c"
           *     }
           */
          'application/json': components$4['schemas']['hafah_backend.block_header'];
        };
      };
    };
  };
  'hafah_endpoints.get_ops_by_block_paging': {
    parameters: {
      query?: {
        /**
         * @description List of operations: if the parameter is empty, all operations will be included,
         *     example: `18,12`
         */
        'operation-types'?: string; /** @description Filter operations by the account that created them */
        'account-name'?: string; /** @description Return page on `page` number, defaults to `1` */
        page?: number; /** @description Return max `page-size` operations per page, defaults to `100` */
        'page-size'?: number;
        /**
         * @description page order:
         *
         *      * `asc` - Ascending, from oldest to newest page
         *
         *      * `desc` - Descending, from newest to oldest page
         */
        'page-order'?: components$4['schemas']['hafah_backend.sort_direction'];
        /**
         * @description If the operation length exceeds the data size limit,
         *     the operation body is replaced with a placeholder, defaults to `200000`
         */
        'data-size-limit'?: number;
        /**
         * @description A parameter specifying the expected value in operation body,
         *     example: `value.creator=steem`
         */
        'path-filter'?: string[];
      };
      header?: never;
      path: {
        /**
         * @description Given block, can be represented either by a `block-num` (integer) or a `timestamp` (in the format `YYYY-MM-DD HH:MI:SS`),
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'block-num': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Result contains total operations number,
       *     total pages and the list of operations
       *
       *     * Returns `hafah_backend.operation_history`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "total_operations": 1,
           *       "total_pages": 1,
           *       "operations_result": [
           *         {
           *           "op": {
           *             "type": "account_created_operation",
           *             "value": {
           *               "creator": "steem",
           *               "new_account_name": "kefadex",
           *               "initial_delegation": {
           *                 "nai": "@@000000037",
           *                 "amount": "0",
           *                 "precision": 6
           *               },
           *               "initial_vesting_shares": {
           *                 "nai": "@@000000037",
           *                 "amount": "30038455132",
           *                 "precision": 6
           *               }
           *             }
           *           },
           *           "block": 5000000,
           *           "trx_id": "6707feb450da66dc223ab5cb3e259937b2fef6bf",
           *           "op_pos": 1,
           *           "op_type_id": 80,
           *           "timestamp": "2016-09-15T19:47:21",
           *           "virtual_op": true,
           *           "operation_id": "21474836480000336",
           *           "trx_in_block": 0
           *         }
           *       ]
           *     }
           */
          'application/json': components$4['schemas']['hafah_backend.operation_history'];
        };
      }; /** @description The result is empty */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafah_endpoints.get_operations': {
    parameters: {
      query: {
        /**
         * @description Lower limit of the block range, can be represented either by a block-number (integer) or a timestamp (in the format YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is more than or equal to the given `timestamp` (i.e. `block's created_at >= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'from-block': string;
        /**
         * @description Similar to the from-block parameter, can either be a block-number (integer) or a timestamp (formatted as YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will convert the value depending on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'to-block': string;
        /**
         * @description List of operations: if the parameter is empty, all operations will be included.
         *     example: `18,12`
         */
        'operation-types'?: string;
        /**
         * @description filter operations by:
         *
         *      * `virtual` - only virtual operations
         *
         *      * `real` - only real operations
         *
         *      * `all` - all operations
         */
        'operation-group-type'?: components$4['schemas']['hafah_backend.operation_group_types']; /** @description Starting operation id */
        'operation-begin'?: number;
        /**
         * @description A limit of retrieved operations per page,
         *     up to 150000
         */
        'page-size'?: number; /** @description If true, operations from reversible blocks will be included. */
        'include-reversible'?: boolean;
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /** @description * Returns `hafah_backend.operations_in_block_range` */200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "ops": [
           *         {
           *           "op": {
           *             "type": "effective_comment_vote_operation",
           *             "value": {
           *               "voter": "rkpl",
           *               "author": "thedevil",
           *               "weight": 0,
           *               "rshares": -1383373254,
           *               "permlink": "re-rkpl-how-to-make-a-good-picture-of-the-moon-my-guide-and-photos-20160915t193128824z",
           *               "pending_payout": {
           *                 "nai": "@@000000013",
           *                 "amount": "0",
           *                 "precision": 3
           *               },
           *               "total_vote_weight": 590910411298246
           *             }
           *           },
           *           "block": 4999999,
           *           "trx_id": "9f4639be729f8ca436ac5bd01b5684cbc126d44d",
           *           "op_in_trx": 1,
           *           "timestamp": "2016-09-15T19:47:18",
           *           "virtual_op": true,
           *           "operation_id": "21474832185033032",
           *           "trx_in_block": 0
           *         },
           *         {
           *           "op": {
           *             "type": "limit_order_cancelled_operation",
           *             "value": {
           *               "seller": "cvk",
           *               "orderid": 1473968539,
           *               "amount_back": {
           *                 "nai": "@@000000021",
           *                 "amount": "9941",
           *                 "precision": 3
           *               }
           *             }
           *           },
           *           "block": 4999999,
           *           "trx_id": "8f2a70dbe09902473eac39ffbd8ff626cb49bb51",
           *           "op_in_trx": 1,
           *           "timestamp": "2016-09-15T19:47:18",
           *           "virtual_op": true,
           *           "operation_id": "21474832185033557",
           *           "trx_in_block": 1
           *         },
           *         {
           *           "op": {
           *             "type": "pow_reward_operation",
           *             "value": {
           *               "reward": {
           *                 "nai": "@@000000037",
           *                 "amount": "5031442145",
           *                 "precision": 6
           *               },
           *               "worker": "smooth.witness"
           *             }
           *           },
           *           "block": 4999999,
           *           "trx_id": "a9596ee741bd4b4b7d3d8cadd15416bfe854209e",
           *           "op_in_trx": 1,
           *           "timestamp": "2016-09-15T19:47:18",
           *           "virtual_op": true,
           *           "operation_id": "21474832185034062",
           *           "trx_in_block": 2
           *         },
           *         {
           *           "op": {
           *             "type": "limit_order_cancelled_operation",
           *             "value": {
           *               "seller": "paco-steem",
           *               "orderid": 1243424767,
           *               "amount_back": {
           *                 "nai": "@@000000013",
           *                 "amount": "19276",
           *                 "precision": 3
           *               }
           *             }
           *           },
           *           "block": 4999999,
           *           "trx_id": "b664e368d117e0b0d4b1b32325a18044f47b5ca5",
           *           "op_in_trx": 1,
           *           "timestamp": "2016-09-15T19:47:18",
           *           "virtual_op": true,
           *           "operation_id": "21474832185034581",
           *           "trx_in_block": 3
           *         },
           *         {
           *           "op": {
           *             "type": "producer_reward_operation",
           *             "value": {
           *               "producer": "smooth.witness",
           *               "vesting_shares": {
           *                 "nai": "@@000000037",
           *                 "amount": "3003846056",
           *                 "precision": 6
           *               }
           *             }
           *           },
           *           "block": 4999999,
           *           "trx_id": "0000000000000000000000000000000000000000",
           *           "op_in_trx": 1,
           *           "timestamp": "2016-09-15T19:47:18",
           *           "virtual_op": true,
           *           "operation_id": "21474832185034816",
           *           "trx_in_block": 4294967295
           *         },
           *         {
           *           "op": {
           *             "type": "account_created_operation",
           *             "value": {
           *               "creator": "steem",
           *               "new_account_name": "kefadex",
           *               "initial_delegation": {
           *                 "nai": "@@000000037",
           *                 "amount": "0",
           *                 "precision": 6
           *               },
           *               "initial_vesting_shares": {
           *                 "nai": "@@000000037",
           *                 "amount": "30038455132",
           *                 "precision": 6
           *               }
           *             }
           *           },
           *           "block": 5000000,
           *           "trx_id": "6707feb450da66dc223ab5cb3e259937b2fef6bf",
           *           "op_in_trx": 1,
           *           "timestamp": "2016-09-15T19:47:21",
           *           "virtual_op": true,
           *           "operation_id": "21474836480000336",
           *           "trx_in_block": 0
           *         },
           *         {
           *           "op": {
           *             "type": "producer_reward_operation",
           *             "value": {
           *               "producer": "ihashfury",
           *               "vesting_shares": {
           *                 "nai": "@@000000037",
           *                 "amount": "3003845513",
           *                 "precision": 6
           *               }
           *             }
           *           },
           *           "block": 5000000,
           *           "trx_id": "0000000000000000000000000000000000000000",
           *           "op_in_trx": 1,
           *           "timestamp": "2016-09-15T19:47:21",
           *           "virtual_op": true,
           *           "operation_id": "21474836480000832",
           *           "trx_in_block": 4294967295
           *         }
           *       ],
           *       "next_operation_begin": 0,
           *       "next_block_range_begin": 5000000
           *     }
           */
          'application/json': components$4['schemas']['hafah_backend.operations_in_block_range'];
        };
      };
    };
  };
  'hafah_endpoints.get_operation': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /**
         * @description An operation-id is a unique operation identifier,
         *     encodes three key pieces of information into a single number,
         *     with each piece occupying a specific number of bits:
         *
         *     ```
         *     msb.....................lsb
         *      || block | op_pos | type ||
         *      ||  32b  |  24b   |  8b  ||
         *     ```
         *
         *      * block (block number) - occupies 32 bits.
         *
         *      * op_pos (position of an operation in block) - occupies 24 bits.
         *
         *      * type (operation type) - occupies 8 bits.
         */
        'operation-id': number;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Operation parameters
       *
       *     * Returns `hafah_backend.operation`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "op": {
           *         "type": "producer_reward_operation",
           *         "value": {
           *           "producer": "initminer",
           *           "vesting_shares": {
           *             "nai": "@@000000021",
           *             "amount": "1000",
           *             "precision": 3
           *           }
           *         }
           *       },
           *       "block": 803,
           *       "trx_id": null,
           *       "op_pos": 1,
           *       "op_type_id": 64,
           *       "timestamp": "2016-03-24T16:45:39",
           *       "virtual_op": true,
           *       "operation_id": "3448858738752",
           *       "trx_in_block": -1
           *     }
           */
          'application/json': components$4['schemas']['hafah_backend.operation'];
        };
      };
    };
  };
  'hafah_endpoints.get_op_types': {
    parameters: {
      query?: {
        /** @description parial name of operation */'partial-operation-name'?: string;
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Operation type list,
       *     if `partial-operation-name` is provided then the list
       *     is limited to operations that partially match the `partial-operation-name`
       *
       *     * Returns array of `hafah_backend.op_types`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example [
           *       {
           *         "op_type_id": 51,
           *         "operation_name": "author_reward_operation",
           *         "is_virtual": true
           *       }
           *     ]
           */
          'application/json': components$4['schemas']['hafah_backend.array_of_op_types'];
        };
      }; /** @description No operations in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafah_endpoints.get_operation_keys': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /** @description Unique operation type identifier */'type-id': number;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Operation json key paths
       *
       *     * Returns `JSON`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example [
           *       [
           *         "value",
           *         "body"
           *       ],
           *       [
           *         "value",
           *         "title"
           *       ],
           *       [
           *         "value",
           *         "author"
           *       ],
           *       [
           *         "value",
           *         "permlink"
           *       ],
           *       [
           *         "value",
           *         "json_metadata"
           *       ],
           *       [
           *         "value",
           *         "parent_author"
           *       ],
           *       [
           *         "value",
           *         "parent_permlink"
           *       ]
           *     ]
           */
          'application/json': string[][];
        };
      };
    };
  };
  'hafah_endpoints.get_transaction': {
    parameters: {
      query?: {
        /** @description If true, virtual operations will be included. */'include-virtual'?: boolean;
      };
      header?: never;
      path: {
        /** @description transaction id of transaction to look up */'transaction-id': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description The transaction body
       *
       *     * Returns `hafah_backend.transaction`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "transaction_json": {
           *         "ref_block_num": 25532,
           *         "ref_block_prefix": 3338687976,
           *         "extensions": [],
           *         "expiration": "2016-08-12T17:23:48",
           *         "operations": [
           *           {
           *             "type": "custom_json_operation",
           *             "value": {
           *               "id": "follow",
           *               "json": "{\"follower\":\"breck0882\",\"following\":\"steemship\",\"what\":[]}",
           *               "required_auths": [],
           *               "required_posting_auths": [
           *                 "breck0882"
           *               ]
           *             }
           *           }
           *         ],
           *         "signatures": [
           *           "201655190aac43bb272185c577262796c57e5dd654e3e491b9b32bd2d567c6d5de75185f221a38697d04d1a8e6a9deb722ec6d6b5d2f395dcfbb94f0e5898e858f"
           *         ]
           *       },
           *       "transaction_id": "954f6de36e6715d128fa8eb5a053fc254b05ded0",
           *       "block_num": 4023233,
           *       "transaction_num": 0,
           *       "timestamp": "2016-08-12T17:23:39"
           *     }
           */
          'application/json': components$4['schemas']['hafah_backend.transaction'];
        };
      };
    };
  };
  'hafah_endpoints.get_ops_by_account': {
    parameters: {
      query?: {
        /** @description Account to filter operations by, if provided only operations where the account is an author will be returned. */'transacting-account-name'?: string;
        /**
         * @description filter operations by:
         *
         *      * `include` - List only operations where transacting_account_id was the author.
         *
         *      * `exclude` - List only operations where transacting_account_id was not the author.
         *
         *      * `all` -  No filtering, transacting_account_id must be NULL.
         */
        'participation-mode'?: components$4['schemas']['hafah_backend.participation_mode'];
        /**
         * @description List of operation types to get. If NULL, gets all operation types.
         *     example: `18,12`
         */
        'operation-types'?: string;
        /**
         * @description Return page on `page` number, default null due to reversed order of pages,
         *     the first page is the oldest,
         *     example: first call returns the newest page and total_pages is 100 - the newest page is number 100, next 99 etc.
         */
        page?: number; /** @description Return max `page-size` operations per page, defaults to `100`. */
        'page-size'?: number;
        /**
         * @description If the operation length exceeds the data size limit,
         *     the operation body is replaced with a placeholder (defaults to `200000`).
         */
        'data-size-limit'?: number;
        /**
         * @description Lower limit of the block range, can be represented either by a block-number (integer) or a timestamp (in the format YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is more than or equal to the given `timestamp` (i.e. `block's created_at >= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'from-block'?: string;
        /**
         * @description Similar to the from-block parameter, can either be a block-number (integer) or a timestamp (formatted as YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will convert the value depending on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'to-block'?: string;
      };
      header?: never;
      path: {
        /** @description Account to get operations for. */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Result contains total number of operations,
       *     total pages, and the list of operations.
       *
       *     * Returns `hafah_backend.account_operation_history`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "total_operations": 219867,
           *       "total_pages": 73289,
           *       "block_range": {
           *         "from": 1,
           *         "to": 5000000
           *       },
           *       "operations_result": [
           *         {
           *           "op": {
           *             "type": "transfer_operation",
           *             "value": {
           *               "to": "blocktrades",
           *               "from": "mrwang",
           *               "memo": "a79c09cd-0084-4cd4-ae63-bf6d2514fef9",
           *               "amount": {
           *                 "nai": "@@000000013",
           *                 "amount": "1633",
           *                 "precision": 3
           *               }
           *             }
           *           },
           *           "block": 4999997,
           *           "trx_id": "e75f833ceb62570c25504b55d0f23d86d9d76423",
           *           "op_pos": 0,
           *           "op_type_id": 2,
           *           "timestamp": "2016-09-15T19:47:12",
           *           "virtual_op": false,
           *           "operation_id": "21474823595099394",
           *           "trx_in_block": 3
           *         },
           *         {
           *           "op": {
           *             "type": "producer_reward_operation",
           *             "value": {
           *               "producer": "blocktrades",
           *               "vesting_shares": {
           *                 "nai": "@@000000037",
           *                 "amount": "3003850165",
           *                 "precision": 6
           *               }
           *             }
           *           },
           *           "block": 4999992,
           *           "trx_id": null,
           *           "op_pos": 1,
           *           "op_type_id": 64,
           *           "timestamp": "2016-09-15T19:46:57",
           *           "virtual_op": true,
           *           "operation_id": "21474802120262208",
           *           "trx_in_block": -1
           *         },
           *         {
           *           "op": {
           *             "type": "producer_reward_operation",
           *             "value": {
           *               "producer": "blocktrades",
           *               "vesting_shares": {
           *                 "nai": "@@000000037",
           *                 "amount": "3003868105",
           *                 "precision": 6
           *               }
           *             }
           *           },
           *           "block": 4999959,
           *           "trx_id": null,
           *           "op_pos": 1,
           *           "op_type_id": 64,
           *           "timestamp": "2016-09-15T19:45:12",
           *           "virtual_op": true,
           *           "operation_id": "21474660386343488",
           *           "trx_in_block": -1
           *         }
           *       ]
           *     }
           */
          'application/json': components$4['schemas']['hafah_backend.account_operation_history'];
        };
      }; /** @description No such account in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafah_endpoints.get_acc_op_types': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /** @description Name of the account */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Operation type list
       *
       *     * Returns array of `INT`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example [
           *       0,
           *       1,
           *       2,
           *       3,
           *       4,
           *       5,
           *       6,
           *       7,
           *       10,
           *       11,
           *       12,
           *       13,
           *       14,
           *       15,
           *       18,
           *       20,
           *       51,
           *       52,
           *       53,
           *       55,
           *       56,
           *       57,
           *       61,
           *       64,
           *       72,
           *       77,
           *       78,
           *       79,
           *       80,
           *       85,
           *       86
           *     ]
           */
          'application/json': number[];
        };
      };
    };
  };
  'hafah_endpoints.get_trade_history': {
    parameters: {
      query: {
        /**
         * @description Lower limit of the block range, can be represented either by a block-number (integer) or a timestamp (in the format YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is more than or equal to the given `timestamp` (i.e. `block's created_at >= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'from-block': string;
        /**
         * @description Similar to the from-block parameter, can either be a block-number (integer) or a timestamp (formatted as YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will convert the value depending on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'to-block': string; /** @description A limit of retrieved orders */
        'result-limit': number;
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /** @description * Returns `hafah_backend.array_of_fill_order` */200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example [
           *       {
           *         "current_pays": {
           *           "amount": "1000",
           *           "nai": "@@000000013",
           *           "precision": 3
           *         },
           *         "date": "2025-04-26T11:45:57",
           *         "maker": "quicktrades",
           *         "open_pays": {
           *           "amount": "3871",
           *           "nai": "@@000000021",
           *           "precision": 3
           *         },
           *         "taker": "elon.curator"
           *       },
           *       {
           *         "current_pays": {
           *           "amount": "1939",
           *           "nai": "@@000000021",
           *           "precision": 3
           *         },
           *         "date": "2025-05-26T11:45:30",
           *         "maker": "quicktrades",
           *         "open_pays": {
           *           "amount": "500",
           *           "nai": "@@000000013",
           *           "precision": 3
           *         },
           *         "taker": "cst90"
           *       }
           *     ]
           */
          'application/json': components$4['schemas']['hafah_backend.array_of_fill_order'];
        };
      };
    };
  };
  'hafah_endpoints.get_recent_trades': {
    parameters: {
      query: {
        /** @description A limit of retrieved orders */'result-limit': number;
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /** @description * Returns `hafah_backend.array_of_fill_order` */200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example [
           *       {
           *         "current_pays": {
           *           "amount": "1000",
           *           "nai": "@@000000013",
           *           "precision": 3
           *         },
           *         "date": "2025-05-26T11:45:57",
           *         "maker": "quicktrades",
           *         "open_pays": {
           *           "amount": "3871",
           *           "nai": "@@000000021",
           *           "precision": 3
           *         },
           *         "taker": "elon.curator"
           *       },
           *       {
           *         "current_pays": {
           *           "amount": "1939",
           *           "nai": "@@000000021",
           *           "precision": 3
           *         },
           *         "date": "2025-05-26T11:45:30",
           *         "maker": "quicktrades",
           *         "open_pays": {
           *           "amount": "500",
           *           "nai": "@@000000013",
           *           "precision": 3
           *         },
           *         "taker": "cst90"
           *       }
           *     ]
           */
          'application/json': components$4['schemas']['hafah_backend.array_of_fill_order'];
        };
      };
    };
  };
  'hafah_endpoints.get_version': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /** @description * Returns `hafah_backend.version_type` */200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "app_name": "PostgRESTHAfAH",
           *       "commit": "136fe35c62cdc0fd7d6ff41cf6c946cadc2a4cd5"
           *     }
           */
          'application/json': components$4['schemas']['hafah_backend.version_type'];
        };
      }; /** @description App not installed */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafah_endpoints.get_head_block_num': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Last block stored in HAF
       *
       *     * Returns `INT`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /** @example 5000000 */'application/json': number;
        };
      }; /** @description No blocks in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafah_endpoints.get_global_state': {
    parameters: {
      query: {
        /**
         * @description Given block, can be represented either by a `block-num` (integer) or a `timestamp` (in the format `YYYY-MM-DD HH:MI:SS`),
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'block-num': string;
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Given block's stats
       *
       *     * Returns `hafah_backend.block`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "block_num": 5000000,
           *       "hash": "004c4b40245ffb07380a393fb2b3d841b76cdaec",
           *       "prev": "004c4b3fc6a8735b4ab5433d59f4526e4a042644",
           *       "producer_account": "ihashfury",
           *       "transaction_merkle_root": "97a8f2b04848b860f1792dc07bf58efcb15aeb8c",
           *       "extensions": [],
           *       "witness_signature": "1f6aa1c6311c768b5225b115eaf5798e5f1d8338af3970d90899cd5ccbe38f6d1f7676c5649bcca18150cbf8f07c0cc7ec3ae40d5936cfc6d5a650e582ba0f8002",
           *       "signing_key": "STM8aUs6SGoEmNYMd3bYjE1UBr6NQPxGWmTqTdBaxJYSx244edSB2",
           *       "hbd_interest_rate": 1000,
           *       "total_vesting_fund_hive": "149190428013",
           *       "total_vesting_shares": "448144916705468350",
           *       "total_reward_fund_hive": "66003975",
           *       "virtual_supply": "161253662237",
           *       "current_supply": "157464400971",
           *       "current_hbd_supply": "2413759427",
           *       "dhf_interval_ledger": 0,
           *       "created_at": "2016-09-15T19:47:21"
           *     }
           */
          'application/json': components$4['schemas']['hafah_backend.block'];
        };
      }; /** @description No blocks in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
}
//#endregion
//#region src/type_generators/types/hafbe.d.ts
interface paths$6 {
  '/witnesses': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * List witnesses
     * @description List all witnesses (both active and standby)
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_witnesses(1,2);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/witnesses?page-size=2'`
     */
    get: operations$5['hafbe_endpoints.get_witnesses'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/witnesses/{account-name}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Returns information about a witness.
     * @description Returns information about a witness given their account name.
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_witness('blocktrades');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/witnesses/blocktrades'`
     */
    get: operations$5['hafbe_endpoints.get_witness'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/witnesses/{account-name}/voters': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get information about the voters for a witness
     * @description Get information about the voters voting for a given witness
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_witness_voters('blocktrades',1,2);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/witnesses/blocktrades/voters?page-size=2'`
     */
    get: operations$5['hafbe_endpoints.get_witness_voters'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/witnesses/{account-name}/voters/count': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get the number of voters for a witness
     * @description Get the number of voters for a witness
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_witness_voters_num('blocktrades');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/witnesses/blocktrades/voters/count'`
     */
    get: operations$5['hafbe_endpoints.get_witness_voters_num'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/witnesses/{account-name}/votes/history': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get the history of votes for this witness.
     * @description Get information about each vote cast for this witness
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_witness_votes_history('blocktrades');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/witnesses/blocktrades/votes/history?page-size=2'`
     */
    get: operations$5['hafbe_endpoints.get_witness_votes_history'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{account-name}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get information about an account including Hive token balances.
     * @description Get account's balances and parameters
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_account('blocktrades');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/accounts/blocktrades'`
     */
    get: operations$5['hafbe_endpoints.get_account'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{account-name}/authority': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get account's owner, active, posting, memo and witness signing authorities
     * @description Get information about account's owner, active, posting, memo and witness signing authorities.
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_account_authority('blocktrades');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/accounts/blocktrades/authority'`
     */
    get: operations$5['hafbe_endpoints.get_account_authority'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{account-name}/proxy-power': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get delegators and total vested power they contribute via witness-proxy
     * @description Lists every account that has set **{account-name}** as its witness proxy,
     *     the date the proxy was set, and the total vested power contributed
     *     (own vesting_shares plus sum of proxied vesting shares levels 1–4 and decreased by delayed vests).
     *
     *     SQL example:
     *     * `SELECT * FROM hafbe_endpoints.get_account_proxies_power('gtg', 1);`
     *
     *     REST call example:
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/accounts/gtg/proxy-power?page=1'`
     */
    get: operations$5['hafbe_endpoints.get_account_proxies_power'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{account-name}/comment-permlinks': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get comment permlinks for an account.
     * @description List comment permlinks of root posts or comments for an account.
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_comment_permlinks('blocktrades','post',1,2,'4000000','4800000');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/accounts/blocktrades/comment-permlinks?comment-type=post&page-size=2&from-block=4000000&to-block=4800000'`
     */
    get: operations$5['hafbe_endpoints.get_comment_permlinks'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{account-name}/operations/comments/{permlink}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get comment-related operations for an author-permlink.
     * @description List operations related to account. Optionally filtered by permlink,
     *     time/blockrange, and specific comment-related operations.
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_comment_operations('blocktrades','blocktrades-witness-report-for-3rd-week-of-august','0',1,3);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/accounts/blocktrades/operations/comments/blocktrades-witness-report-for-3rd-week-of-august?page-size=3&operation-types=0'`
     */
    get: operations$5['hafbe_endpoints.get_comment_operations'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/block-search': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * List block stats that match operation type filter, account name, and time/block range.
     * @description List the block stats that match given operation type filter,
     *     account name and time/block range in specified order
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_block_by_op(NULL,NULL,NULL,5);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/block-search?page-size=5'`
     */
    get: operations$5['hafbe_endpoints.get_block_by_op'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/transaction-statistics': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Aggregated transaction statistics
     * @description History of amount of transactions per day, month or year.
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_transaction_statistics();`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/transaction-statistics'`
     */
    get: operations$5['hafbe_endpoints.get_transaction_statistics'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/version': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get Haf_block_explorer's version
     * @description Get haf_block_explorer's last commit hash (versions set by by hash value).
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_hafbe_version();`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/version'`
     */
    get: operations$5['hafbe_endpoints.get_hafbe_version'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/last-synced-block': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get last block number synced by haf_block_explorer
     * @description Get the block number of the last block synced by haf_block_explorer.
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_hafbe_last_synced_block();`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/last-synced-block'`
     */
    get: operations$5['hafbe_endpoints.get_hafbe_last_synced_block'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/input-type/{input-value}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Determines object type of input-value.
     * @description Determines whether the entered value is a block,
     *     block hash, transaction hash, or account name.
     *     This method is very specific to block explorer UIs.
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_input_type('blocktrades');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/input-type/blocktrades'`
     */
    get: operations$5['hafbe_endpoints.get_input_type'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/operation-type-counts': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Returns histogram of operation types in blocks.
     * @description Lists the counts of operations in result-limit blocks along with their creators.
     *     If block-num is not specified, the result includes the counts of operations in the most recent blocks.
     *
     *
     *     SQL example
     *     * `SELECT * FROM hafbe_endpoints.get_latest_blocks(1);`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/hafbe-api/operation-type-counts?result-limit=1'`
     */
    get: operations$5['hafbe_endpoints.get_latest_blocks'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
}
interface components$3 {
  schemas: {
    /** @enum {string} */'hafbe_types.comment_type': 'post' | 'comment' | 'all'; /** @enum {string} */
    'hafbe_types.sort_direction': 'asc' | 'desc'; /** @enum {string} */
    'hafbe_types.order_by_votes': 'voter' | 'vests' | 'account_vests' | 'proxied_vests' | 'timestamp'; /** @enum {string} */
    'hafbe_types.order_by_witness': 'witness' | 'rank' | 'url' | 'votes' | 'votes_daily_change' | 'voters_num' | 'voters_num_daily_change' | 'price_feed' | 'bias' | 'block_size' | 'signing_key' | 'version' | 'feed_updated_at';
    'hafbe_types.witness': {
      /** @description witness's account name */witness_name?: string; /** @description the current rank of the witness according to the votes cast on the blockchain. The top 20 witnesses (ranks 1 - 20) will produce blocks each round. */
      rank?: number; /** @description the witness's home page */
      url?: string; /** @description the total weight of votes cast in favor of this witness, expressed in VESTS */
      vests?: string; /** @description the increase or decrease in votes for this witness over the last 24 hours, expressed in vests */
      votes_daily_change?: string; /** @description the number of voters for this witness */
      voters_num?: number; /** @description the increase or decrease in the number of voters voting for this witness over the last 24 hours */
      voters_num_daily_change?: number; /** @description the current price feed provided by the witness in HIVE/HBD */
      price_feed?: number;
      /**
       * @description When setting the price feed, you specify the base and quote. Typically, if market conditions are stable and, for example, HBD is trading at 0.25 USD on exchanges, a witness would set:
       *       base: 0.250 HBD
       *       quote: 1.000 HIVE
       *     (This indicates that one HIVE costs 0.25 HBD.) However, if the peg is not maintained and HBD does not equal 1 USD (either higher or lower), the witness can adjust the feed accordingly. For instance, if HBD is trading at only 0.90 USD on exchanges, the witness might set:
       *       base: 0.250 HBD
       *       quote: 1.100 HIVE
       *     In this case, the bias is 10%
       */
      bias?: number;
      /**
       * Format: date-time
       * @description timestamp when feed was updated
       */
      feed_updated_at?: string; /** @description the maximum block size the witness is currently voting for, in bytes */
      block_size?: number; /** @description the key used to verify blocks signed by this witness */
      signing_key?: string; /** @description the version of hived the witness is running */
      version?: string; /** @description the number of blocks the witness should have generated but didn't (over the entire lifetime of the blockchain) */
      missed_blocks?: number; /** @description the interest rate the witness is voting for */
      hbd_interest_rate?: number; /** @description the last block number created by the witness */
      last_confirmed_block_num?: number; /** @description the cost of creating an account. */
      account_creation_fee?: number;
    };
    'hafbe_types.witnesses_return': {
      /** @description Total number of witnesses */total_witnesses?: number; /** @description Total number of pages */
      total_pages?: number; /** @description List of witness parameters */
      witnesses?: components$3['schemas']['hafbe_types.witness'][];
    };
    'hafbe_types.witness_voter': {
      /** @description account name of the voter */voter_name?: string; /** @description number of vests this voter is directly voting with */
      vests?: string; /** @description number of vests in the voter's account.  if some vests are delegated, they will not be counted in voting */
      account_vests?: string; /** @description the number of vests proxied to this account */
      proxied_vests?: string;
      /**
       * Format: date-time
       * @description the time this account last changed its voting power
       */
      timestamp?: string;
    };
    'hafbe_types.witness_voter_history': {
      /** @description Total number of votes */total_votes?: number; /** @description Total number of pages */
      total_pages?: number; /** @description List of votes results */
      voters?: components$3['schemas']['hafbe_types.witness_voter'][];
    };
    'hafbe_types.witness_votes_history_record': {
      /** @description account name of the voter */voter_name?: string; /** @description whether the voter approved or rejected the witness */
      approve?: boolean; /** @description number of vests this voter is directly voting with */
      vests?: string; /** @description number of vests in the voter's account.  if some vests are delegated, they will not be counted in voting */
      account_vests?: string; /** @description the number of vests proxied to this account */
      proxied_vests?: string;
      /**
       * Format: date-time
       * @description the time of the vote change
       */
      timestamp?: string;
    };
    'hafbe_types.witness_votes_history': {
      /** @description Total number of votes */total_votes?: number; /** @description Total number of pages */
      total_pages?: number; /** @description List of witness votes */
      votes_history?: components$3['schemas']['hafbe_types.witness_votes_history_record'][];
    };
    'hafbe_types.account': {
      /** @description account's identification number */id?: number; /** @description account's name */
      name?: string; /** @description information whether the account can vote or not */
      can_vote?: boolean; /** @description information whether made a prove of work */
      mined?: boolean; /** @description an account to which the account has designated as its proxy */
      proxy?: string; /** @description an account to which the account has designated as its recovery account */
      recovery_account?: string;
      /**
       * Format: date-time
       * @description time when the last account recovery was performed
       */
      last_account_recovery?: string;
      /**
       * Format: date-time
       * @description date of account creation
       */
      created?: string; /** @description numerical rating of the user  based on upvotes and downvotes on user's posts */
      reputation?: number; /** @description pool of prepaid accounts available for user allocation.  These accounts are pre-registered and can be claimed by users as needed */
      pending_claimed_accounts?: number; /** @description parameter encompasses personalized profile information */
      json_metadata?: string; /** @description parameter encompasses personalized profile information */
      posting_json_metadata?: string; /** @description url to profile image */
      profile_image?: string; /** @description number of HIVE backed dollars the account has */
      hbd_balance?: number; /** @description account's HIVE balance */
      balance?: number; /** @description account's VEST balance */
      vesting_shares?: string; /** @description the VEST balance, presented in HIVE,  is calculated based on the current HIVE price */
      vesting_balance?: number; /** @description saving balance of HIVE backed dollars */
      hbd_saving_balance?: number; /** @description HIVE saving balance */
      savings_balance?: number; /** @description number representing how many payouts are pending  from user's saving balance */
      savings_withdraw_requests?: number; /** @description not yet claimed HIVE backed dollars  stored in hbd reward balance */
      reward_hbd_balance?: number; /** @description not yet claimed HIVE  stored in hive reward balance */
      reward_hive_balance?: number; /** @description not yet claimed VESTS  stored in vest reward balance */
      reward_vesting_balance?: string; /** @description the reward vesting balance, denominated in HIVE,  is determined by the prevailing HIVE price at the time of reward reception */
      reward_vesting_hive?: number; /** @description rewards obtained by posting and commenting expressed in VEST */
      posting_rewards?: string; /** @description curator's reward expressed in VEST */
      curation_rewards?: string; /** @description VESTS delegated to another user,  account's power is lowered by delegated VESTS */
      delegated_vesting_shares?: string; /** @description VESTS received from another user,  account's power is increased by received VESTS */
      received_vesting_shares?: string; /** @description recursive proxy of VESTS */
      proxied_vsf_votes?: string[]; /** @description the total VESTS already withdrawn from active withdrawals */
      withdrawn?: string; /** @description received until the withdrawal is complete,  with each installment amounting to 1/13 of the withdrawn total */
      vesting_withdraw_rate?: string; /** @description the remaining total VESTS needed to complete withdrawals */
      to_withdraw?: string; /** @description list of account receiving the part of a withdrawal */
      withdraw_routes?: number; /** @description blocked VESTS by a withdrawal */
      delayed_vests?: string; /** @description the roster of witnesses voted by the account */
      witness_votes?: string[]; /** @description count of witness_votes */
      witnesses_voted_for?: number; /** @description the number of operations performed by the account */
      ops_count?: number; /** @description whether account is a witness */
      is_witness?: boolean;
    };
    'hafbe_types.auth_with_weight': (string | number)[];
    'hafbe_types.authority_type': {
      key_auths?: components$3['schemas']['hafbe_types.auth_with_weight'][];
      account_auths?: components$3['schemas']['hafbe_types.auth_with_weight'][];
      weight_threshold?: number;
    };
    'hafbe_types.account_authority': {
      /** @description the most powerful key because it can change any key of an account, including the owner key. Ideally it is meant to be stored offline, and only used to recover a compromised account */owner?: components$3['schemas']['hafbe_types.authority_type']; /** @description key meant for more sensitive tasks such as transferring funds, power up/down transactions, converting Hive Dollars, voting for witnesses, updating profile details and avatar, and placing a market order */
      active?: components$3['schemas']['hafbe_types.authority_type']; /** @description key allows accounts to post, comment, edit, vote, reblog and follow or mute other accounts */
      posting?: components$3['schemas']['hafbe_types.authority_type']; /** @description default key to be used for memo encryption */
      memo?: string; /** @description key used by a witness to sign blocks */
      witness_signing?: string;
    };
    'hafbe_types.proxy_power': {
      account?: string; /** Format: date-time */
      proxy_date?: string; /** @description Own vesting shares plus sum of proxied vesting shares (levels 1–4) decreased by delayed vests */
      proxied_vests?: string;
    };
    'hafbe_types.block_range': {
      from?: number;
      to?: number;
    };
    'hafbe_types.block_operations': {
      /** @description operation type identifier */op_type_id?: number; /** @description amount of operations in block */
      op_count?: number;
    };
    'hafbe_types.blocksearch': {
      /** @description block number */block_num?: number;
      /**
       * Format: date-time
       * @description creation date
       */
      created_at?: string; /** @description account name of block's producer */
      producer_account?: string; /** @description operation type identifier */
      producer_reward?: string; /** @description count of transactions in block */
      trx_count?: number; /** @description block hash in a blockchain is a unique, fixed-length string generated  by applying a cryptographic hash function to a block's contents */
      hash?: string; /** @description hash of a previous block */
      prev?: string; /** @description List of block_operation */
      operations?: components$3['schemas']['hafbe_types.block_operations'][];
    };
    'hafbe_types.block_history': {
      /** @description Total number of blocks */total_blocks?: number; /** @description Total number of pages */
      total_pages?: number; /** @description Range of blocks that contains the returned pages */
      block_range?: components$3['schemas']['hafbe_types.block_range']; /** @description List of block results */
      blocks_result?: components$3['schemas']['hafbe_types.blocksearch'][];
    };
    'hafbe_types.permlink': {
      /** @description unique post identifier containing post's title and generated number */permlink?: string; /** @description operation block number */
      block?: number; /** @description hash of the transaction */
      trx_id?: string;
      /**
       * Format: date-time
       * @description creation date
       */
      timestamp?: string; /** @description unique operation identifier with an encoded block number and operation type id */
      operation_id?: string;
    };
    'hafbe_types.permlink_history': {
      /** @description Total number of permlinks */total_permlinks?: number; /** @description Total number of pages */
      total_pages?: number; /** @description Range of blocks that contains the returned pages */
      block_range?: components$3['schemas']['hafbe_types.block_range']; /** @description List of permlinks */
      permlinks_result?: components$3['schemas']['hafbe_types.permlink'][];
    };
    'hafbe_types.latest_blocks': {
      /** @description block number */block_num?: number; /** @description witness that created the block */
      witness?: string; /** @description List of block_operation */
      operations?: components$3['schemas']['hafbe_types.block_operations'][];
    };
    'hafbe_types.array_of_latest_blocks': components$3['schemas']['hafbe_types.latest_blocks'][];
    'hafbe_types.input_type_return': {
      /** @description operation type id */input_type?: string; /** @description number of operations in the block */
      input_value?: string[];
    };
    'hafbe_types.operation_body': {
      type?: string;
      value?: Record<string, never>;
    };
    'hafbe_types.operation': {
      /** @description operation body */op?: components$3['schemas']['unknown_operation']; /** @description operation block number */
      block?: number; /** @description hash of the transaction */
      trx_id?: string; /** @description operation identifier that indicates its sequence number in transaction */
      op_pos?: number; /** @description operation type identifier */
      op_type_id?: number;
      /**
       * Format: date-time
       * @description the time operation was included in the blockchain
       */
      timestamp?: string; /** @description true if is a virtual operation */
      virtual_op?: boolean; /** @description unique operation identifier with an encoded block number and operation type id */
      operation_id?: string; /** @description transaction identifier that indicates its sequence number in block */
      trx_in_block?: number;
    };
    'hafbe_types.operation_history': {
      /** @description Total number of operations */total_operations?: number; /** @description Total number of pages */
      total_pages?: number; /** @description List of operation results */
      operations_result?: components$3['schemas']['hafbe_types.operation'][];
    }; /** @enum {string} */
    'hafbe_types.granularity': 'daily' | 'monthly' | 'yearly';
    'hafbe_types.transaction_stats': {
      /**
       * Format: date-time
       * @description the time transaction was included in the blockchain
       */
      date?: string; /** @description amount of transactions */
      trx_count?: number; /** @description avarage amount of transactions in block */
      avg_trx?: number; /** @description minimal amount of transactions in block */
      min_trx?: number; /** @description maximum amount of transactions in block */
      max_trx?: number; /** @description last block number in time range */
      last_block_num?: number;
    };
    'hafbe_types.array_of_transaction_stats': components$3['schemas']['hafbe_types.transaction_stats'][];
    'hafbe_types.array_of_proxy_power': components$3['schemas']['hafbe_types.proxy_power'][];
    unknown_operation: Record<string, never>;
  };
  responses: never;
  parameters: never;
  requestBodies: never;
  headers: never;
  pathItems: never;
}
interface operations$5 {
  'hafbe_endpoints.get_witnesses': {
    parameters: {
      query?: {
        /** @description Return page on `page` number, defaults to `1` */page?: number; /** @description Return max `page-size` operations per page, defaults to `100` */
        'page-size'?: number;
        /**
         * @description Sort key:
         *
         *      * `witness` - the witness name
         *
         *      * `rank` - their current rank (highest weight of votes => lowest rank)
         *
         *      * `url` - the witness url
         *
         *      * `votes` - total number of votes
         *
         *      * `votes_daily_change` - change in `votes` in the last 24 hours
         *
         *      * `voters_num` - total number of voters approving the witness
         *
         *      * `voters_num_daily_change` - change in `voters_num` in the last 24 hours
         *
         *      * `price_feed` - their current published value for the HIVE/HBD price feed
         *
         *      * `feed_updated_at` - feed update timestamp
         *
         *      * `bias` - if HBD is trading at only 0.90 USD on exchanges, the witness might set:
         *             base: 0.250 HBD
         *             quote: 1.100 HIVE
         *           In this case, the bias is 10%
         *
         *      * `block_size` - the block size they are voting for
         *
         *      * `signing_key` - the witness' block-signing public key
         *
         *      * `version` - the version of hived the witness is running
         */
        sort?: components$3['schemas']['hafbe_types.order_by_witness'];
        /**
         * @description Sort order:
         *
         *      * `asc` - Ascending, from A to Z or smallest to largest
         *
         *      * `desc` - Descending, from Z to A or largest to smallest
         */
        direction?: components$3['schemas']['hafbe_types.sort_direction'];
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description The list of witnesses
       *
       *     * Returns `hafbe_types.witnesses_return`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "total_witnesses": 731,
           *       "total_pages": 366,
           *       "witnesses": [
           *         {
           *           "witness_name": "roadscape",
           *           "rank": 1,
           *           "url": "https://steemit.com/witness-category/@roadscape/witness-roadscape",
           *           "vests": "94172201023355097",
           *           "votes_daily_change": "0",
           *           "voters_num": 306,
           *           "voters_num_daily_change": 0,
           *           "price_feed": 0.539,
           *           "bias": 0,
           *           "feed_updated_at": "2016-09-15T16:07:42",
           *           "block_size": 65536,
           *           "signing_key": "STM5AS7ZS33pzTf1xbTi8ZUaUeVAZBsD7QXGrA51HvKmvUDwVbFP9",
           *           "version": "0.13.0",
           *           "missed_blocks": 129,
           *           "hbd_interest_rate": 1000,
           *           "last_confirmed_block_num": 4999986,
           *           "account_creation_fee": 2000
           *         },
           *         {
           *           "witness_name": "arhag",
           *           "rank": 2,
           *           "url": "https://steemit.com/witness-category/@arhag/witness-arhag",
           *           "vests": "91835048921097725",
           *           "votes_daily_change": "0",
           *           "voters_num": 348,
           *           "voters_num_daily_change": 0,
           *           "price_feed": 0.536,
           *           "bias": 0,
           *           "feed_updated_at": "2016-09-15T19:31:18",
           *           "block_size": 65536,
           *           "signing_key": "STM8kvk4JH2m6ZyHBGNor4qk2Zwdi2MJAjMYUpfqiicCKu7HqAeZh",
           *           "version": "0.13.0",
           *           "missed_blocks": 61,
           *           "hbd_interest_rate": 1000,
           *           "last_confirmed_block_num": 4999993,
           *           "account_creation_fee": 7000
           *         }
           *       ]
           *     }
           */
          'application/json': components$3['schemas']['hafbe_types.witnesses_return'];
        };
      };
    };
  };
  'hafbe_endpoints.get_witness': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /** @description witness account name */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Various witness statistics
       *
       *     * Returns `hafbe_types.witness_return`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "witness_name": "blocktrades",
           *       "rank": 8,
           *       "url": "https://blocktrades.us",
           *       "vests": "82373419958692803",
           *       "votes_daily_change": "0",
           *       "voters_num": 263,
           *       "voters_num_daily_change": 0,
           *       "price_feed": 0.545,
           *       "bias": 0,
           *       "feed_updated_at": "2016-09-15T16:02:21",
           *       "block_size": 65536,
           *       "signing_key": "STM4vmVc3rErkueyWNddyGfmjmLs3Rr4i7YJi8Z7gFeWhakXM4nEz",
           *       "version": "0.13.0",
           *       "missed_blocks": 935,
           *       "hbd_interest_rate": 1000,
           *       "last_confirmed_block_num": 4999992,
           *       "account_creation_fee": 9000
           *     }
           */
          'application/json': components$3['schemas']['hafbe_types.witness'];
        };
      }; /** @description No such witness */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafbe_endpoints.get_witness_voters': {
    parameters: {
      query?: {
        /**
         * @description When provided, only votes associated with this account will be included in the results,
         *     allowing for targeted analysis of an individual account's voting activity.
         */
        'voter-name'?: string; /** @description Return page on `page` number, defaults to `1` */
        page?: number; /** @description Return max `page-size` operations per page, defaults to `100` */
        'page-size'?: number;
        /**
         * @description Sort order:
         *
         *      * `voter` - account name of voter
         *
         *      * `vests` - total voting power = account_vests + proxied_vests of voter
         *
         *      * `account_vests` - direct vests of voter
         *
         *      * `proxied_vests` - proxied vests of voter
         *
         *      * `timestamp` - last time voter voted for the witness
         */
        sort?: components$3['schemas']['hafbe_types.order_by_votes'];
        /**
         * @description Sort order:
         *
         *      * `asc` - Ascending, from A to Z or smallest to largest
         *
         *      * `desc` - Descending, from Z to A or largest to smallest
         */
        direction?: components$3['schemas']['hafbe_types.sort_direction'];
      };
      header?: never;
      path: {
        /** @description witness account name */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description The number of voters currently voting for this witness
       *
       *     * Returns `hafbe_types.witness_voter_history`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "total_votes": 263,
           *       "total_pages": 132,
           *       "voters": [
           *         {
           *           "voter_name": "blocktrades",
           *           "vests": "13155953611548185",
           *           "account_vests": "8172549681941451",
           *           "proxied_vests": "4983403929606734",
           *           "timestamp": "2016-04-15T02:19:57"
           *         },
           *         {
           *           "voter_name": "dan",
           *           "vests": "9928811304950768",
           *           "account_vests": "9928811304950768",
           *           "proxied_vests": "0",
           *           "timestamp": "2016-06-27T12:41:42"
           *         }
           *       ]
           *     }
           */
          'application/json': components$3['schemas']['hafbe_types.witness_voter_history'];
        };
      }; /** @description No such witness */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafbe_endpoints.get_witness_voters_num': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /** @description The witness account name */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description The number of voters currently voting for this witness
       *
       *     * Returns `INT`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /** @example 263 */'application/json': number;
        };
      }; /** @description No such witness */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafbe_endpoints.get_witness_votes_history': {
    parameters: {
      query?: {
        /**
         * @description When provided, only votes associated with this account will be included in the results,
         *     allowing for targeted analysis of an individual account's voting activity.
         */
        'voter-name'?: string; /** @description Return page on `page` number, defaults to `1` */
        page?: number; /** @description Return max `page-size` operations per page, defaults to `100` */
        'page-size'?: number;
        direction?: components$3['schemas']['hafbe_types.sort_direction'];
        /**
         * @description Lower limit of the block range, can be represented either by a block-number (integer) or a timestamp (in the format YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is more than or equal to the given `timestamp` (i.e. `block's created_at >= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'from-block'?: string;
        /**
         * @description Similar to the from-block parameter, can either be a block-number (integer) or a timestamp (formatted as YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will convert the value depending on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'to-block'?: string;
      };
      header?: never;
      path: {
        /** @description witness account name */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description The number of voters currently voting for this witness
       *
       *     * Returns `hafbe_types.witness_votes_history`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "total_votes": 263,
           *       "total_pages": 132,
           *       "votes_history": [
           *         {
           *           "voter_name": "jeremyfromwi",
           *           "approve": true,
           *           "vests": "441156952466",
           *           "account_vests": "441156952466",
           *           "proxied_vests": "0",
           *           "timestamp": "2016-09-15T07:07:15"
           *         },
           *         {
           *           "voter_name": "cryptomental",
           *           "approve": true,
           *           "vests": "686005633844",
           *           "account_vests": "686005633844",
           *           "proxied_vests": "0",
           *           "timestamp": "2016-09-15T07:00:51"
           *         }
           *       ]
           *     }
           */
          'application/json': components$3['schemas']['hafbe_types.witness_votes_history'];
        };
      }; /** @description No such witness */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafbe_endpoints.get_account': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /** @description Name of the account */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description The account's parameters
       *
       *     * Returns `hafbe_types.account`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "id": 440,
           *       "name": "blocktrades",
           *       "can_vote": true,
           *       "mined": true,
           *       "proxy": "",
           *       "recovery_account": "steem",
           *       "last_account_recovery": "1970-01-01T00:00:00",
           *       "created": "2016-03-30T00:04:36",
           *       "reputation": 69,
           *       "pending_claimed_accounts": 0,
           *       "json_metadata": "",
           *       "posting_json_metadata": "",
           *       "profile_image": "",
           *       "hbd_balance": 77246982,
           *       "balance": 29594875,
           *       "vesting_shares": "8172549681941451",
           *       "vesting_balance": 2720696229,
           *       "hbd_saving_balance": 0,
           *       "savings_balance": 0,
           *       "savings_withdraw_requests": 0,
           *       "reward_hbd_balance": 0,
           *       "reward_hive_balance": 0,
           *       "reward_vesting_balance": "0",
           *       "reward_vesting_hive": 0,
           *       "posting_rewards": "65916519",
           *       "curation_rewards": "196115157",
           *       "delegated_vesting_shares": "0",
           *       "received_vesting_shares": "0",
           *       "proxied_vsf_votes": [
           *         "4983403929606734",
           *         "0",
           *         "0",
           *         "0"
           *       ],
           *       "withdrawn": "804048182205290",
           *       "vesting_withdraw_rate": "80404818220529",
           *       "to_withdraw": "8362101094935031",
           *       "withdraw_routes": 4,
           *       "delayed_vests": "0",
           *       "witness_votes": [
           *         "steempty",
           *         "blocktrades",
           *         "datasecuritynode",
           *         "steemed",
           *         "silversteem",
           *         "witness.svk",
           *         "joseph",
           *         "smooth.witness",
           *         "gtg"
           *       ],
           *       "witnesses_voted_for": 9,
           *       "ops_count": 219867,
           *       "is_witness": true
           *     }
           */
          'application/json': components$3['schemas']['hafbe_types.account'];
        };
      }; /** @description No such account in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafbe_endpoints.get_account_authority': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /** @description Name of the account */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description List of account's authorities
       *
       *     * Returns `hafbe_types.account_authority`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "owner": {
           *         "key_auths": [
           *           [
           *             "STM7WdrxF6iuSiHUB4maoLGXXBKXbqAJ9AZbzACX1MPK2AkuCh23S",
           *             1
           *           ]
           *         ],
           *         "account_auths": [],
           *         "weight_threshold": 1
           *       },
           *       "active": {
           *         "key_auths": [
           *           [
           *             "STM5vgGoHBrUuDCspAPYi3dLwSyistyrz61NWkZNUAXAifZJaDLPF",
           *             1
           *           ]
           *         ],
           *         "account_auths": [],
           *         "weight_threshold": 1
           *       },
           *       "posting": {
           *         "key_auths": [
           *           [
           *             "STM5SaNVKJgy6ghnkNoMAprTxSDG55zps21Bo8qe1rnHmwAR4LzzC",
           *             1
           *           ]
           *         ],
           *         "account_auths": [],
           *         "weight_threshold": 1
           *       },
           *       "memo": "STM7EAUbNf1CdTrMbydPoBTRMG4afXCoAErBJYevhgne6zEP6rVBT",
           *       "witness_signing": "STM4vmVc3rErkueyWNddyGfmjmLs3Rr4i7YJi8Z7gFeWhakXM4nEz"
           *     }
           */
          'application/json': components$3['schemas']['hafbe_types.account_authority'];
        };
      }; /** @description No such account in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafbe_endpoints.get_account_proxies_power': {
    parameters: {
      query?: {
        /** @description 1-based page number (100 rows per page) */page?: number;
      };
      header?: never;
      path: {
        /** @description Name of the proxy account */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /** @description Array of delegators and their total vested power */200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          'application/json': components$3['schemas']['hafbe_types.array_of_proxy_power'];
        };
      }; /** @description No such account in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafbe_endpoints.get_comment_permlinks': {
    parameters: {
      query?: {
        /**
         * @description Sort order:
         *
         *      * `post`    - permlinks related to root posts
         *
         *      * `comment` - permlinks related to comments
         *
         *      * `all`     - both, posts and comments
         */
        'comment-type'?: components$3['schemas']['hafbe_types.comment_type']; /** @description Return page on `page` number, defaults to `1` */
        page?: number; /** @description Return max `page-size` operations per page, defaults to `100` */
        'page-size'?: number;
        /**
         * @description Lower limit of the block range, can be represented either by a block-number (integer) or a timestamp (in the format YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is more than or equal to the given `timestamp` (i.e. `block's created_at >= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'from-block'?: string;
        /**
         * @description Similar to the from-block parameter, can either be a block-number (integer) or a timestamp (formatted as YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will convert the value depending on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'to-block'?: string;
      };
      header?: never;
      path: {
        /** @description Account to get operations for */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Result contains total number of operations,
       *     total pages, and the list of operations.
       *
       *     * Returns `hafbe_types.permlink_history`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "total_permlinks": 3,
           *       "total_pages": 2,
           *       "block_range": {
           *         "from": 4000000,
           *         "to": 4800000
           *       },
           *       "permlinks_result": [
           *         {
           *           "permlink": "witness-report-for-blocktrades-for-last-week-of-august",
           *           "block": 4575065,
           *           "trx_id": "d35590b9690ee8aa4b572901d62bc6263953346a",
           *           "timestamp": "2016-09-01T00:18:51",
           *           "operation_id": "19649754552074241"
           *         },
           *         {
           *           "permlink": "blocktrades-witness-report-for-3rd-week-of-august",
           *           "block": 4228346,
           *           "trx_id": "bdcd754eb66f18eac11322310ae7ece1e951c08c",
           *           "timestamp": "2016-08-19T21:27:00",
           *           "operation_id": "18160607786173953"
           *         }
           *       ]
           *     }
           */
          'application/json': components$3['schemas']['hafbe_types.permlink_history'];
        };
      }; /** @description No such account in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafbe_endpoints.get_comment_operations': {
    parameters: {
      query?: {
        /**
         * @description List of operation types to include. If NULL, all comment operation types will be included.
         *     comment-related operation type ids: `0, 1, 17, 19, 51, 52, 53, 61, 63, 72, 73`
         */
        'operation-types'?: string; /** @description Return page on `page` number, defaults to `1` */
        page?: number; /** @description Return max `page-size` operations per page, defaults to `100` */
        'page-size'?: number;
        /**
         * @description Sort order:
         *
         *      * `asc` - Ascending, from A to Z or smallest to largest
         *
         *      * `desc` - Descending, from Z to A or largest to smallest
         */
        direction?: components$3['schemas']['hafbe_types.sort_direction'];
        /**
         * @description If the operation length exceeds the `data-size-limit`,
         *     the operation body is replaced with a placeholder (defaults to `200000`).
         */
        'data-size-limit'?: number;
      };
      header?: never;
      path: {
        /** @description Account to get operations for */'account-name': string; /** @description Unique post identifier containing post's title and generated number */
        permlink: string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Result contains total number of operations,
       *     total pages, and the list of operations.
       *
       *     * Returns `hafbe_types.operation_history `
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "total_operations": 350,
           *       "total_pages": 117,
           *       "operations_result": [
           *         {
           *           "op": {
           *             "type": "vote_operation",
           *             "value": {
           *               "voter": "blocktrades",
           *               "author": "blocktrades",
           *               "weight": 10000,
           *               "permlink": "blocktrades-witness-report-for-3rd-week-of-august"
           *             }
           *           },
           *           "block": 4228228,
           *           "trx_id": "2bbeb7513e49cb169d4fe446ff980f2102f7210a",
           *           "op_pos": 1,
           *           "op_type_id": 0,
           *           "timestamp": "2016-08-19T21:21:03",
           *           "virtual_op": false,
           *           "operation_id": "18160100980032256",
           *           "trx_in_block": 1
           *         },
           *         {
           *           "op": {
           *             "type": "vote_operation",
           *             "value": {
           *               "voter": "murh",
           *               "author": "blocktrades",
           *               "weight": 3301,
           *               "permlink": "blocktrades-witness-report-for-3rd-week-of-august"
           *             }
           *           },
           *           "block": 4228239,
           *           "trx_id": "e06bc7ad9c51a974ee2bd673e8fa4b4f7018bc18",
           *           "op_pos": 0,
           *           "op_type_id": 0,
           *           "timestamp": "2016-08-19T21:21:36",
           *           "virtual_op": false,
           *           "operation_id": "18160148224672256",
           *           "trx_in_block": 1
           *         },
           *         {
           *           "op": {
           *             "type": "vote_operation",
           *             "value": {
           *               "voter": "weenis",
           *               "author": "blocktrades",
           *               "weight": 10000,
           *               "permlink": "blocktrades-witness-report-for-3rd-week-of-august"
           *             }
           *           },
           *           "block": 4228240,
           *           "trx_id": "c5a07b2a069db3ac9faffe0c5a6c6296ef3e78c5",
           *           "op_pos": 0,
           *           "op_type_id": 0,
           *           "timestamp": "2016-08-19T21:21:39",
           *           "virtual_op": false,
           *           "operation_id": "18160152519641600",
           *           "trx_in_block": 5
           *         }
           *       ]
           *     }
           */
          'application/json': components$3['schemas']['hafbe_types.operation_history'];
        };
      }; /** @description No such account in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafbe_endpoints.get_block_by_op': {
    parameters: {
      query?: {
        /**
         * @description List of operations: if the parameter is NULL, all operations will be included.
         *     example: `18,12`
         */
        'operation-types'?: string; /** @description Filter operations by the account that created them. */
        'account-name'?: string; /** @description Return page on `page` number, defaults to `NULL` */
        page?: number; /** @description Return max `page-size` operations per page, defaults to `100` */
        'page-size'?: number;
        /**
         * @description Sort order:
         *
         *      * `asc` - Ascending, from A to Z or smallest to largest
         *
         *      * `desc` - Descending, from Z to A or largest to smallest
         */
        direction?: components$3['schemas']['hafbe_types.sort_direction'];
        /**
         * @description Lower limit of the block range, can be represented either by a block-number (integer) or a timestamp (in the format YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is more than or equal to the given `timestamp` (i.e. `block's created_at >= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'from-block'?: string;
        /**
         * @description Similar to the from-block parameter, can either be a block-number (integer) or a timestamp (formatted as YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will convert the value depending on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'to-block'?: string;
        /**
         * @description A parameter specifying the desired value in operation body,
         *     example: `value.creator=alpha`
         */
        'path-filter'?: string[];
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Block number with filtered operations
       *
       *     * Returns `hafbe_types.block_history`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "total_blocks": 5000000,
           *       "total_pages": 1000000,
           *       "block_range": {
           *         "from": 1,
           *         "to": 5000000
           *       },
           *       "blocks_result": [
           *         {
           *           "block_num": 5000000,
           *           "created_at": "2016-09-15T19:47:21",
           *           "producer_account": "ihashfury",
           *           "producer_reward": "3003845513",
           *           "trx_count": 2,
           *           "hash": "004c4b40245ffb07380a393fb2b3d841b76cdaec",
           *           "prev": "004c4b3fc6a8735b4ab5433d59f4526e4a042644",
           *           "operations": [
           *             {
           *               "op_type_id": 5,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 9,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 64,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 80,
           *               "op_count": 1
           *             }
           *           ]
           *         },
           *         {
           *           "block_num": 4999999,
           *           "created_at": "2016-09-15T19:47:18",
           *           "producer_account": "smooth.witness",
           *           "producer_reward": "3003846056",
           *           "trx_count": 4,
           *           "hash": "004c4b3fc6a8735b4ab5433d59f4526e4a042644",
           *           "prev": "004c4b3e03ea2eac2494790786bfb9e41a8669d9",
           *           "operations": [
           *             {
           *               "op_type_id": 0,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 6,
           *               "op_count": 2
           *             },
           *             {
           *               "op_type_id": 30,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 64,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 72,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 78,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 85,
           *               "op_count": 2
           *             }
           *           ]
           *         },
           *         {
           *           "block_num": 4999998,
           *           "created_at": "2016-09-15T19:47:15",
           *           "producer_account": "steemed",
           *           "producer_reward": "3003846904",
           *           "trx_count": 2,
           *           "hash": "004c4b3e03ea2eac2494790786bfb9e41a8669d9",
           *           "prev": "004c4b3d6c34ebe3eb75dad04ce0a13b5f8a08cf",
           *           "operations": [
           *             {
           *               "op_type_id": 0,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 1,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 64,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 72,
           *               "op_count": 1
           *             }
           *           ]
           *         },
           *         {
           *           "block_num": 4999997,
           *           "created_at": "2016-09-15T19:47:12",
           *           "producer_account": "clayop",
           *           "producer_reward": "3003847447",
           *           "trx_count": 4,
           *           "hash": "004c4b3d6c34ebe3eb75dad04ce0a13b5f8a08cf",
           *           "prev": "004c4b3c51ee947feceeb1812702816114aea6e4",
           *           "operations": [
           *             {
           *               "op_type_id": 0,
           *               "op_count": 2
           *             },
           *             {
           *               "op_type_id": 2,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 5,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 61,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 64,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 72,
           *               "op_count": 2
           *             }
           *           ]
           *         },
           *         {
           *           "block_num": 4999996,
           *           "created_at": "2016-09-15T19:47:09",
           *           "producer_account": "riverhead",
           *           "producer_reward": "3003847991",
           *           "trx_count": 2,
           *           "hash": "004c4b3c51ee947feceeb1812702816114aea6e4",
           *           "prev": "004c4b3bd268694ea02f24de50c50c9e7a831e60",
           *           "operations": [
           *             {
           *               "op_type_id": 6,
           *               "op_count": 2
           *             },
           *             {
           *               "op_type_id": 64,
           *               "op_count": 1
           *             },
           *             {
           *               "op_type_id": 85,
           *               "op_count": 2
           *             }
           *           ]
           *         }
           *       ]
           *     }
           */
          'application/json': components$3['schemas']['hafbe_types.block_history'];
        };
      }; /** @description No operations in database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafbe_endpoints.get_transaction_statistics': {
    parameters: {
      query?: {
        /**
         * @description granularity types:
         *
         *     * daily
         *
         *     * monthly
         *
         *     * yearly
         */
        granularity?: components$3['schemas']['hafbe_types.granularity'];
        /**
         * @description Sort order:
         *
         *      * `asc` - Ascending, from oldest to newest
         *
         *      * `desc` - Descending, from newest to oldest
         */
        direction?: components$3['schemas']['hafbe_types.sort_direction'];
        /**
         * @description Lower limit of the block range, can be represented either by a block-number (integer) or a timestamp (in the format YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is more than or equal to the given `timestamp` (i.e. `block's created_at >= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'from-block'?: string;
        /**
         * @description Similar to the from-block parameter, can either be a block-number (integer) or a timestamp (formatted as YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will convert the value depending on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'to-block'?: string;
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Balance change
       *
       *     * Returns array of `hafbe_types.transaction_stats`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example [
           *       {
           *         "date": "2017-01-01T00:00:00",
           *         "trx_count": 6961192,
           *         "avg_trx": 1,
           *         "min_trx": 0,
           *         "max_trx": 89,
           *         "last_block_num": 5000000
           *       }
           *     ]
           */
          'application/json': components$3['schemas']['hafbe_types.array_of_transaction_stats'];
        };
      }; /** @description No such account in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafbe_endpoints.get_hafbe_version': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Haf_block_explorer version
       *
       *     * Returns `TEXT`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /** @example c2fed8958584511ef1a66dab3dbac8c40f3518f0 */'application/json': string;
        };
      }; /** @description App not installed */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafbe_endpoints.get_hafbe_last_synced_block': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Last synced block by Haf_block_explorer
       *
       *     * Returns `INT`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /** @example 5000000 */'application/json': number;
        };
      }; /** @description No blocks synced */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafbe_endpoints.get_input_type': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /** @description Object type to be identified. */'input-value': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Result contains total operations number,
       *     total pages and the list of operations
       *
       *     * Returns `hafbe_types.input_type_return `
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "input_type": "account_name",
           *       "input_value": [
           *         "blocktrades"
           *       ]
           *     }
           */
          'application/json': components$3['schemas']['hafbe_types.input_type_return'];
        };
      }; /** @description Input is not recognized */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hafbe_endpoints.get_latest_blocks': {
    parameters: {
      query?: {
        /**
         * @description Given block, can be represented either by a `block-num` (integer) or a `timestamp` (in the format `YYYY-MM-DD HH:MI:SS`),
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'block-num'?: string; /** @description Specifies number of blocks to return starting with head block, defaults to `20` */
        'result-limit'?: number;
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Operation counts for each block
       *
       *     * Returns array of `hafbe_types.latest_blocks`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example [
           *       {
           *         "block_num": 5000000,
           *         "witness": "ihashfury",
           *         "operations": [
           *           {
           *             "op_count": 1,
           *             "op_type_id": 64
           *           },
           *           {
           *             "op_count": 1,
           *             "op_type_id": 9
           *           },
           *           {
           *             "op_count": 1,
           *             "op_type_id": 80
           *           },
           *           {
           *             "op_count": 1,
           *             "op_type_id": 5
           *           }
           *         ]
           *       }
           *     ]
           */
          'application/json': components$3['schemas']['hafbe_types.array_of_latest_blocks'];
        };
      }; /** @description No blocks in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
}
//#endregion
//#region src/type_generators/types/hivemind.d.ts
interface paths$5 {
  '/accounts/{account-name}/operations': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get operations for an account by recency.
     * @description List the non-virtual operations in reversed order (first page is the oldest) for given account.
     *     The page size determines the number of operations per page.
     *
     *     SQL example
     *     * `SELECT * FROM hivemind_endpoints.get_ops_by_account('blocktrades');`
     *
     *     REST call example
     *     * `GET 'https://{hivemind-host}/hivemind-api/accounts/blocktrades/operations?page-size=3'`
     */
    get: operations$4['hivemind_endpoints.get_ops_by_account'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
}
interface components$2 {
  schemas: {
    'hivemind_endpoints.block_range_type': {
      from?: number;
      to?: number;
    };
    'hivemind_endpoints.operation_body': {
      type?: string;
      value?: Record<string, never>;
    };
    'hivemind_endpoints.array_of_operations': components$2['schemas']['hivemind_endpoints.operation_body'][];
    'hivemind_endpoints.operation': {
      /** @description operation body */op?: components$2['schemas']['hivemind_endpoints.operation_body']; /** @description block containing the operation */
      block?: number; /** @description hash of the transaction */
      trx_id?: string; /** @description operation identifier that indicates its sequence number in transaction */
      op_pos?: number; /** @description operation type identifier */
      op_type_id?: number;
      /**
       * Format: date-time
       * @description creation date
       */
      timestamp?: string; /** @description true if is a virtual operation */
      virtual_op?: boolean; /** @description unique operation identifier with an encoded block number and operation type id */
      operation_id?: string; /** @description transaction identifier that indicates its sequence number in block */
      trx_in_block?: number;
    };
    'hivemind_endpoints.operation_history': {
      /** @description Total number of operations */total_operations?: number; /** @description Total number of pages */
      total_pages?: number; /** @description Range of blocks that contains the returned pages */
      block_range?: components$2['schemas']['hivemind_endpoints.block_range_type']; /** @description List of operation results */
      operations_result?: components$2['schemas']['hivemind_endpoints.operation'][];
    };
  };
  responses: never;
  parameters: never;
  requestBodies: never;
  headers: never;
  pathItems: never;
}
interface operations$4 {
  'hivemind_endpoints.get_ops_by_account': {
    parameters: {
      query?: {
        /** @description Account name of the observer */'observer-name'?: string;
        /**
         * @description List of operation types to get. If NULL, gets all non-virtual operation types.
         *     example: `18,12`
         */
        'operation-types'?: string;
        /**
         * @description Return page on `page` number, default null due to reversed order of pages,
         *     the first page is the oldest,
         *     example: first call returns the newest page and total_pages is 100 - the newest page is number 100, next 99 etc.
         */
        page?: number; /** @description Return max `page-size` operations per page, defaults to `100`. */
        'page-size'?: number;
        /**
         * @description If the operation length exceeds the data size limit,
         *     the operation body is replaced with a placeholder (defaults to `200000`).
         */
        'data-size-limit'?: number;
        /**
         * @description Lower limit of the block range, can be represented either by a block-number (integer) or a timestamp (in the format YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is more than or equal to the given `timestamp` (i.e. `block's created_at >= timestamp`).
         *
         *     The function will interpret and convert the input based on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'from-block'?: string;
        /**
         * @description Similar to the from-block parameter, can either be a block-number (integer) or a timestamp (formatted as YYYY-MM-DD HH:MI:SS).
         *
         *     The provided `timestamp` will be converted to a `block-num` by finding the first block
         *     where the block's `created_at` is less than or equal to the given `timestamp` (i.e. `block's created_at <= timestamp`).
         *
         *     The function will convert the value depending on its format, example input:
         *
         *     * `2016-09-15 19:47:21`
         *
         *     * `5000000`
         */
        'to-block'?: string;
      };
      header?: never;
      path: {
        /** @description Account to get operations for. */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Result contains total number of operations,
       *     total pages, and the list of operations.
       *
       *     * Returns `hivemind_endpoints.operation_history`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example {
           *       "total_operations": 219867,
           *       "total_pages": 73289,
           *       "block_range": {
           *         "from": 1,
           *         "to": 5000000
           *       },
           *       "operations_result": [
           *         {
           *           "op": {
           *             "type": "transfer_operation",
           *             "value": {
           *               "to": "blocktrades",
           *               "from": "mrwang",
           *               "memo": "a79c09cd-0084-4cd4-ae63-bf6d2514fef9",
           *               "amount": {
           *                 "nai": "@@000000013",
           *                 "amount": "1633",
           *                 "precision": 3
           *               }
           *             }
           *           },
           *           "block": 4999997,
           *           "trx_id": "e75f833ceb62570c25504b55d0f23d86d9d76423",
           *           "op_pos": 0,
           *           "op_type_id": 2,
           *           "timestamp": "2016-09-15T19:47:12",
           *           "virtual_op": false,
           *           "operation_id": "21474823595099394",
           *           "trx_in_block": 3
           *         }
           *       ]
           *     }
           */
          'application/json': components$2['schemas']['hivemind_endpoints.operation_history'];
        };
      }; /** @description No such account in the database */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
}
//#endregion
//#region src/type_generators/types/hivesense.d.ts
interface paths$4 {
  '/posts/search': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Full semantic search results in a single call
     * @description Returns an ordered list of posts most similar to a given query.
     *     The first **N** results (default 10, max 50) are returned as full
     *     bridge-post JSON objects; the remaining results (up to **posts_limit**,
     *     default 100, max 1000) are stub entries containing only *author* and
     *     *permlink*.  Paging is now done entirely on the client side.
     */
    get: operations$3['hivesense_endpoints.posts_search'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/posts/{author}/{permlink}/similar': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Full semantic search results for similar posts in a single call
     * @description Performs semantic similarity search to find posts that are contextually
     *     similar to a specified Hive post. Returns an ordered list of posts most
     *     similar to the given post.
     *
     *     The first **N** results (default 10, max 50) are returned as full
     *     bridge-post JSON objects; the remaining results (up to **posts_limit**,
     *     default 100, max 1000) are stub entries containing only *author* and
     *     *permlink*. Paging is done entirely on the client side.
     *
     *     Key features:
     *     - Semantic analysis considers post content and context
     *     - Results are ordered by similarity (most similar first)
     *     - Optional content filtering through observer blacklists
     *     - Configurable body length truncation for preview purposes
     *     - Split response: full data for top results, stubs for remainder
     *
     *     The similarity analysis takes into account:
     *     - Post content and context
     *     - Semantic relationships between posts
     *     - Topic relevance and contextual meaning
     *
     *     SQL example:
     *     SELECT * FROM hivesense_endpoints.posts_similar('bue-witness', 'bue-witness-post', 20, 100, 10);
     *
     *     REST call example:
     *     GET 'https://rpc.mahdiyari.info//hivesense-api/posts/bue-witness/my-blog-post/similar?truncate=20&limit=100&full_posts=10'
     */
    get: operations$3['hivesense_endpoints.posts_similar'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/authors/search': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * List of Hive accounts thematically aligned with a given pattern, ranked by the semantic similarity of their posts.
     * @description This endpoint returns a JSON array of author names ranked by their thematic alignment
     *     with a given text pattern. The ranking is based on the semantic similarity of their
     *     posts to the input pattern, with higher-ranked posts contributing more to the author’s score.
     *     Each authors score is computed as the sum of 1 / sqrt(r), where r is the rank of each post
     *     associated with the author. Authors with more frequent and higher-ranked posts receive higher scores.
     *     The result is a sorted list of author names, from most to least thematically aligned.
     */
    get: operations$3['hivesense_endpoints.authors_search'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/posts/by-ids': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    get?: never;
    put?: never;
    /**
     * Fetch full post details for multiple posts by their IDs
     * @description Retrieves complete post information for a batch of posts identified by
     *     their author/permlink pairs. This endpoint is designed to work with the
     *     new paging model where search results return mostly stub entries, and
     *     clients fetch full details as needed for display.
     *
     *     Key features:
     *     - Accepts up to 50 post identifiers in a single request
     *     - Returns posts in the same order as requested
     *     - Supports body truncation for preview mode
     *     - Respects observer mute lists and blacklists
     *     - Returns null for non-existent posts while preserving order
     *
     *     This endpoint is typically used after calling /posts/search or
     *     /posts/{author}/{permlink}/similar, which return full data for only
     *     the first N posts. When the user scrolls or pages through results,
     *     the client calls this endpoint with the next batch of author/permlink
     *     pairs to get their full details.
     *
     *     Example workflow:
     *     1. Call /posts/search with result_limit=1000, full_posts=10
     *     2. Display first 10 posts immediately (already have full data)
     *     3. When user scrolls to post 11, call this endpoint with posts 11-20
     *     4. Continue fetching batches as user scrolls
     */
    post: operations$3['hivesense_endpoints.posts_by_ids'];
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/posts/by-ids-query': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Fetch full post details for multiple posts (GET variant)
     * @description GET variant of /posts/by-ids that accepts post identifiers as query
     *     parameters. Limited to fetching fewer posts due to URL length constraints.
     *
     *     For larger batches, use the POST /posts/by-ids endpoint instead.
     *
     *     The posts parameter should be a URL-encoded JSON array.
     *
     *     Example:
     *     GET /posts/by-ids-query?posts=[{"author":"user1","permlink":"post1"}]&truncate=500
     */
    get: operations$3['hivesense_endpoints.posts_by_ids_query'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
}
interface operations$3 {
  'hivesense_endpoints.posts_search': {
    parameters: {
      query: {
        /** @description Search query text for semantic similarity, e.g. `"vector databases"` */q: string; /** @description Body truncation length (0 = full content, >0 = truncate to N chars) */
        truncate?: number; /** @description Total number of posts (full + stub) to return */
        result_limit?: number; /** @description How many of the top results should include full post data */
        full_posts?: number; /** @description Hive account whose mute lists etc. will be respected */
        observer?: string;
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /** @description JSON array of result objects */200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /** @example {} */'application/json': string;
        };
      };
    };
  };
  'hivesense_endpoints.posts_similar': {
    parameters: {
      query?: {
        /**
         * @description Controls the length of returned post bodies in the results. When set to 0,
         *     returns complete post content. Any other positive value will truncate the
         *     post body to that many characters. Useful for generating previews or
         *     reducing response size. Maximum value is 65535 characters.
         * @example 20
         */
        truncate?: number;
        /**
         * @description Total number of posts (full + stub) to return. Must be between
         *     1 and 1000. The posts are returned in order of similarity, with the most
         *     similar posts first. Setting a lower limit can improve response times
         *     and reduce data transfer.
         * @example 100
         */
        result_limit?: number;
        /**
         * @description How many of the top results should include full post data. Any
         *     remaining posts (up to result_limit) will be stub entries with only
         *     author & permlink. Set this to the size of your first page of results.
         * @example 10
         */
        full_posts?: number;
        /**
         * @description Optional Hive account name with blacklists that will be used to filter the
         *     results. When provided, any posts from authors in the observer
         *     blacklist will be excluded from the results. Leave empty to disable
         *     blacklist filtering. Useful for content moderation and personalization.
         * @example hive.blog
         */
        observer?: string;
      };
      header?: never;
      path: {
        /**
         * @description The Hive username of the post author. This is the account name that
         *     created the original post for which you want to find similar content.
         *     Must be a valid Hive account name.
         * @example bue-witness
         */
        author: string;
        /**
         * @description The unique permlink identifier of the post. This is the URL-friendly
         *     version of the post title that appears in the post URL on Hive.
         *     Together with the author name, it uniquely identifies the post.
         * @example my-blog-post
         */
        permlink: string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /** @description Successful response with JSON that contains a list of similar posts */200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /** @example {} */'application/json': string;
        };
      };
    };
  };
  'hivesense_endpoints.authors_search': {
    parameters: {
      query: {
        /**
         * @description Topic or theme to search for. Authors whose posts are semantically related to this topic will be returned.
         * @example Make witness node secure against hackers attack and emergency situations
         */
        topic: string;
        /**
         * @description Maximum number of authors to return (1-100).
         * @example 10
         */
        result_limit?: number; /** @description Observer (hive account name) whose settings (such as muted lists) are used to filter out excluded posts from the search results */
        observer?: string;
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /** @description * Returns  JSON with a sorted list of Hive accounts */200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example [
           *       "dele-puppy",
           *       "nextgencrypto",
           *       "xeroc",
           *       "steemed",
           *       "tuck-fheman",
           *       "dantheman",
           *       "salvation",
           *       "pharesim",
           *       "masteryoda",
           *       "ihashfury"
           *     ]
           */
          'application/json': string;
        };
      };
    };
  };
  'hivesense_endpoints.posts_by_ids': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody: {
      content: {
        'application/json': {
          /**
           * @description Array of post identifiers. Each item must have both 'author'
           *     and 'permlink' fields. Maximum 50 posts per request.
           * @example [
           *       {
           *         "author": "bue-witness",
           *         "permlink": "my-first-post"
           *       },
           *       {
           *         "author": "another-user",
           *         "permlink": "interesting-topic"
           *       }
           *     ]
           */
          posts: {
            /** @description The Hive username of the post author */author: string; /** @description The unique permlink identifier of the post */
            permlink: string;
          }[];
          /**
           * @description Body truncation length. 0 returns full content, positive values
           *     truncate to N characters. Useful for preview mode.
           * @default 0
           */
          truncate?: number;
          /**
           * @description Optional Hive account whose mute lists and blacklists will be
           *     applied to filter results. Leave empty to disable filtering.
           * @default
           */
          observer?: string;
        };
      };
    };
    responses: {
      /**
       * @description JSON array of post objects in the same order as requested.
       *     Non-existent posts are returned as null to preserve array indices.
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /** @example {} */'application/json': string;
        };
      }; /** @description Invalid request (e.g., too many posts, invalid format) */
      400: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'hivesense_endpoints.posts_by_ids_query': {
    parameters: {
      query: {
        /**
         * @description URL-encoded JSON array of post identifiers. Each object must have
         *     'author' and 'permlink' fields. Maximum 10 posts for GET requests.
         * @example [{"author":"bue-witness","permlink":"my-post"}]
         */
        posts: string; /** @description Body truncation length (0 = full content) */
        truncate?: number; /** @description Optional Hive account for filtering */
        observer?: string;
      };
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /** @description JSON array of post objects */200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /** @example {} */'application/json': string;
        };
      };
    };
  };
}
//#endregion
//#region src/type_generators/types/reputation.d.ts
interface paths$3 {
  '/accounts/{account-name}/reputation': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Account reputation
     * @description Returns calculated reputation with formula found in:
     *     https://hive.blog/steemit/@digitalnotvir/how-reputation-scores-are-calculated-the-details-explained-with-simple-math
     *
     *     SQL example
     *     * `SELECT * FROM reptracker_endpoints.get_account_reputation('blocktrades');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/reputation-api/accounts/blocktrades/reputation'`
     */
    get: operations$2['reptracker_endpoints.get_account_reputation'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/version': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get reputation tracker's version
     * @description Get reputation tracker's last commit hash (versions set by by hash value).
     *
     *     SQL example
     *     * `SELECT * FROM reptracker_endpoints.get_reptracker_version();`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/balance-api/version'`
     */
    get: operations$2['reptracker_endpoints.get_reptracker_version'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/last-synced-block': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get last block number synced by reputation tracker
     * @description Get the block number of the last block synced by reputation tracker.
     *
     *     SQL example
     *     * `SELECT * FROM reptracker_endpoints.get_rep_last_synced_block();`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/reputation-api/last-synced-block'`
     */
    get: operations$2['reptracker_endpoints.get_rep_last_synced_block'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
}
interface operations$2 {
  'reptracker_endpoints.get_account_reputation': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /** @description Name of the account */'account-name': string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /** @description No such account in the database */200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /** @example 69 */'application/json': number;
        };
      };
    };
  };
  'reptracker_endpoints.get_reptracker_version': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description reputation tracker version
       *
       *     * Returns `TEXT`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /** @example c2fed8958584511ef1a66dab3dbac8c40f3518f0 */'application/json': string;
        };
      }; /** @description App not installed */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'reptracker_endpoints.get_rep_last_synced_block': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Last synced block by reputation tracker
       *
       *     * Returns `INT`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /** @example 5000000 */'application/json': number;
        };
      }; /** @description No blocks synced */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
}
//#endregion
//#region src/type_generators/types/nft-tracker.d.ts
interface paths$2 {
  '/version': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get NFT Tracker's version
     * @description Get NFT Tracker's last commit hash (versions set by hash value).
     *
     *     SQL example
     *     * `SELECT * FROM nfttracker_endpoints.get_version();`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/nft-tracker-api/version'`
     */
    get: operations$1['nfttracker_endpoints.get_version'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/nfts': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * NFT types
     * @description Returns registered NFT types.
     *
     *     SQL example
     *     * `SELECT * FROM nfttracker_endpoints.get_nft_types();`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/nft-tracker-api/nfts'`
     */
    get: operations$1['nfttracker_endpoints.get_nft_types'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/nfts/{creator}/{symbol}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * NFT instances
     * @description Returns issued instances of given NFT symbol.
     *
     *     SQL example
     *     * `SELECT * FROM nfttracker_endpoints.get_nft_instances('alice', 'TEST');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/nft-tracker-api/nfts/alice/TEST'`
     */
    get: operations$1['nfttracker_endpoints.get_nft_instances'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/nfts/{creator}/{symbol}/{tags}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * NFT instances
     * @description Returns issued instances of given NFT symbol.
     *
     *     SQL example
     *     * `SELECT * FROM nfttracker_endpoints.get_nft_instances('alice', 'TEST');`
     *
     *     REST call example
     *     * `GET 'https://rpc.mahdiyari.info/nft-tracker-api/nfts/alice/TEST'`
     */
    get: operations$1['nfttracker_endpoints.get_nft_instances_with_tags'];
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
}
interface components$1 {
  schemas: {
    'nfttracker_endpoints.nft_type': {
      /** @description id of NFT type */id?: number; /** @description account name that registered NFT type */
      creator?: string; /** @description current owner of NFT type */
      owner?: string; /** @description symbol name of registered NFT type */
      symbol?: string; /** @description name of registered NFT type */
      name?: string; /** @description max number of possible issued instances of this NFT type */
      max_count?: number;
      /**
       * Format: date-time
       * @description the timestamp when the NFT type was registered
       */
      created_at?: string;
      /**
       * Format: date-time
       * @description the timestamp when the NFT type was last modified
       */
      updated_at?: string; /** @description list of accounts that can issue instance of this NFT type */
      authorized_issuers?: string[];
    };
    'nfttracker_endpoints.nft_instance': {
      /** @description id of NFT instance */id?: number; /** @description account currently owning this instance */
      holder?: string; /** @description extra data as JSON */
      data?: string; /** @description extra tags associated with this instance */
      tags?: string[]; /** @description whether this instance is soulbound (cannot be transferred to other account) */
      soulbound?: boolean;
      /**
       * Format: date-time
       * @description the timestamp when this instance was created
       */
      created_at?: string;
      /**
       * Format: date-time
       * @description the timestamp this instance was last modified
       */
      updated_at?: string;
    };
  };
  responses: never;
  parameters: never;
  requestBodies: never;
  headers: never;
  pathItems: never;
}
interface operations$1 {
  'nfttracker_endpoints.get_version': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description NFT Tracker version
       *
       *     * Returns `TEXT`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /** @example c2fed8958584511ef1a66dab3dbac8c40f3518f0 */'application/json': string;
        };
      }; /** @description App not installed */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'nfttracker_endpoints.get_nft_types': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Registered NFT types
       *
       *     * Returns `nfttracker_endpoints.nft_type`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example [
           *       {
           *         "id": 1,
           *         "creator": "alice",
           *         "owner": "bob",
           *         "symbol": "TEST",
           *         "name": "Test symbol",
           *         "max_count": 10,
           *         "created_at": "2025-08-22T12:00:00",
           *         "updated_at": "2025-08-22T12:00:00"
           *       }
           *     ]
           */
          'application/json': components$1['schemas']['nfttracker_endpoints.nft_type'][];
        };
      };
    };
  };
  'nfttracker_endpoints.get_nft_instances': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /** @description name of the account that created the NFT type */creator: string; /** @description NFT symbol */
        symbol: string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Issued NFT instances of given symbol
       *
       *     * Returns `nfttracker_endpoints.nft_instance`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example [
           *       {
           *         "id": 1,
           *         "holder": "alice",
           *         "data": "{\"key\": \"value\"}",
           *         "tags": [
           *           "item",
           *           "collectible"
           *         ],
           *         "soulbound": false,
           *         "created_at": "2025-08-22T12:00:00",
           *         "updated_at": "2025-08-22T12:00:00"
           *       }
           *     ]
           */
          'application/json': components$1['schemas']['nfttracker_endpoints.nft_instance'][];
        };
      }; /** @description creator/symbol combination does not exist */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
  'nfttracker_endpoints.get_nft_instances_with_tags': {
    parameters: {
      query?: never;
      header?: never;
      path: {
        /** @description name of the account that created the NFT type */creator: string; /** @description NFT symbol */
        symbol: string;
        /**
         * @description Only return instances with tags matching pattern.
         *     Pattern is a pipe-separated list of comma-separated tags.
         *     Example: `a,b|x,y|z` will match instances with tags 'a' and 'b', 'x' and 'y', or 'z'.
         */
        tags: string;
      };
      cookie?: never;
    };
    requestBody?: never;
    responses: {
      /**
       * @description Issued NFT instances of given symbol
       *
       *     * Returns `nfttracker_endpoints.nft_instance`
       */
      200: {
        headers: {
          [name: string]: unknown;
        };
        content: {
          /**
           * @example [
           *       {
           *         "id": 1,
           *         "holder": "alice",
           *         "data": "{\"key\": \"value\"}",
           *         "tags": [
           *           "item",
           *           "collectible"
           *         ],
           *         "soulbound": false,
           *         "created_at": "2025-08-22T12:00:00",
           *         "updated_at": "2025-08-22T12:00:00"
           *       }
           *     ]
           */
          'application/json': components$1['schemas']['nfttracker_endpoints.nft_instance'][];
        };
      }; /** @description creator/symbol combination does not exist */
      404: {
        headers: {
          [name: string]: unknown;
        };
        content?: never;
      };
    };
  };
}
//#endregion
//#region src/type_generators/types/hafsql.d.ts
interface paths$1 {
  '/openapi.json': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * OpenAPI definitions
     * @description The OpenAPI definitions of the HafSQL APIs as JSON.
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path?: never;
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description JSON */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>;
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/comments/{author}/{permlink}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get Comment
     * @description Returns a post or comment by author and permlink.
     */
    get: {
      parameters: {
        query?: {
          /** @description Set true to return the post/comment body */include_body?: boolean;
        };
        header?: never;
        path: {
          /** @description The post/comment author */author: string; /** @description The post/comment permlink */
          permlink: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description Post/comment as JSON */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>;
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/communities/{username}/roles': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Community Roles
     * @description Returns list of roles in a community.
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description Community account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of roles */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/communities/{username}/subscribers': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Community Subscribers
     * @description Returns list of community subscribers.
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description Community account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of accounts */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/balances/by-names': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Balances by names
     * @description Returns balances of the accounts.
     */
    get: {
      parameters: {
        query: {
          /** @description List of usernames separated by `,` */names: string;
        };
        header?: never;
        path?: never;
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of balance objects */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': unknown;
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/balances/historical/{name}/{block_num}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Historical balances
     * @description Returns balances of the account at certain block_num.
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description Username */name: string; /** @description Block number */
          block_num: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON object of balances */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': unknown;
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/balances/rich-list/{symbol}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Rich list
     * @description Returns the top holders of a certain token.
     */
    get: {
      parameters: {
        query?: {
          /**
           * @description Max number of returned items<br/>
           *     <sub>min: 1 | max: 1000</sub>
           */
          limit?: number;
        };
        header?: never;
        path: {
          /** @description Token symbol */symbol: components['schemas']['Symbol'];
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON object of balances */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': unknown;
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/balances/total-balances': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Total balances
     * @description Returns the historical sum of account balances computed daily.<br/>
     *     Note: Pending balances such as pending convert or pending escrow are not taken into account.
     */
    get: {
      parameters: {
        query?: {
          /** @description Block number used for pagination */start?: number;
          /**
           * @description Max number of returned items -
           *     Can be negative for going backwards and to reverse the sorting<br/>
           *     <sub>min: -1000 | max: 1000</sub>
           */
          limit?: number;
        };
        header?: never;
        path?: never;
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON object of balances */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': unknown;
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{username}/blacklisting': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Blacklisting accounts
     * @description Returns list of accounts who have blacklisted a certain username.
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description Account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{username}/blacklisted': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Blacklisted accounts
     * @description Returns list of accounts blacklisted by a certain username.
     */
    get: {
      parameters: {
        query?: {
          /** @description Username used for pagination */start?: string;
          /**
           * @description Max number of returned items -
           *     Can be negative for going backwards and to reverse the sorting<br/>
           *     <sub>min: -1000 | max: 1000</sub>
           */
          limit?: number;
        };
        header?: never;
        path: {
          /** @description Account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{username}/blacklists': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Blacklists followed
     * @description Returns list of blacklists followed by a certain username.
     *     Each blacklist is a Hive username.
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description Account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * All accounts
     * @description Returns the list of all Hive accounts.
     */
    get: {
      parameters: {
        query?: {
          /** @description Account name used for pagination */start?: string;
          /**
           * @description Max number of returned items -
           *     Can be negative for going backwards and to reverse the sorting <br/>
           *     <sub>min: -1000 | max: 1000</sub>
           */
          limit?: number;
        };
        header?: never;
        path?: never;
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/by-names': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Accounts by names
     * @description Returns account[s] related information.
     */
    get: {
      parameters: {
        query: {
          /** @description List of usernames separated by `,` */names: string;
        };
        header?: never;
        path?: never;
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account objects */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': unknown;
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        }; /** @description No items found */
        404: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['NoItemFound'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/by-creator/{username}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Accounts by creator
     * @description Search accounts by their creator.
     */
    get: {
      parameters: {
        query?: {
          /** @description Account name used for pagination */start?: string;
          /**
           * @description Max number of returned items -
           *     Can be negative for going backwards and to reverse the sorting<br/>
           *     <sub>min: -1000 | max: 1000</sub>
           */
          limit?: number;
        };
        header?: never;
        path: {
          /** @description Username of the creator */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/by-recovery/{username}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Accounts by recovery
     * @description Search accounts by their recovery.
     */
    get: {
      parameters: {
        query?: {
          /** @description Account name used for pagination */start?: string;
          /**
           * @description Max number of returned items -
           *     Can be negative for going backwards and to reverse the sorting<br/>
           *     <sub>min: -1000 | max: 1000</sub>
           */
          limit?: number;
        };
        header?: never;
        path: {
          /** @description Username of the recovery */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/by-key/{key}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Accounts by key
     * @description Search accounts by their public key (memo, posting, active, and owner)
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description Public key */key: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/by-authority/{username}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Accounts by authority
     * @description Search accounts by their granted authorities
     *     (posting, active, and owner)
     */
    get: {
      parameters: {
        query?: {
          /** @description Account name used for pagination */start?: string;
          /**
           * @description Max number of returned items -
           *     Can be negative for going backwards and to reverse the sorting<br/>
           *     <sub>min: -1000 | max: 1000</sub>
           */
          limit?: number;
        };
        header?: never;
        path: {
          /** @description Username of the authority */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/by-proxy/{username}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Accounts by proxy
     * @description Search accounts by their proxy.
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description Proxy username */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/reputations/{username}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get Reputation
     * @description Return reputation of a user.
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description Account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description Reputation string */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string;
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/operations/by-range/{types}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Operations in block range
     * @description Return specified operations in a block range
     */
    get: {
      parameters: {
        query: {
          /** @description Block range - Maximum range is 1000 blocks */block_range: string;
        };
        header?: never;
        path: {
          /** @description Operation types */types: components['schemas']['OperationTypes'];
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description JSON array of operations */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/operations/custom_json/{id}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * custom_json
     * @description Search custom_json operations
     */
    get: {
      parameters: {
        query?: {
          /**
           * @description `id` (the id used in the database for sorting not the custom_id)
           *     or `block_num` used for pagination - omit to return the latest items
           */
          start?: string;
          /**
           * @description Max number of items to return - Can be negative to reverse the sorting
           *     - min: -1000
           *     - max: 1000
           *     - default 100
           */
          limit?: string;
        };
        header?: never;
        path: {
          /** @description ID parameter of the custom_json to find - we call this custom_id */id: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description JSON array of operations */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/operations/transfer': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * transfer
     * @description Search transfer operations
     */
    get: {
      parameters: {
        query?: {
          /**
           * @description Memo to search -
           *     prefix with `%LIKE%:` for partial search with sql LIKE - For example to find all memos starting with `!poll` we can do
           *     `%LIKE%:!poll%` - This will search for results like `!poll test1234`
           */
          memo?: string; /** @description Username of the sender */
          from?: string; /** @description Destination username */
          to?: string; /** @description `id` or `block_num` used for pagination */
          start?: string;
          /**
           * @description Max number of items to return - Can be negative to reverse the sorting
           *     - min: -1000
           *     - max: 1000
           *     - default 100
           */
          limit?: string;
        };
        header?: never;
        path?: never;
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description JSON array of operations */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/delegations/{username}/incoming': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Incoming HP Delegations
     * @description Returns list of incoming delegations to a user.
     */
    get: {
      parameters: {
        query?: {
          /** @description Timestamp used for pagination */start?: string;
          /**
           * @description Max number of returned items -
           *     Can be negative for going backwards and to reverse the sorting<br/>
           *     <sub>min: -1000 | max: 1000</sub>
           */
          limit?: number;
        };
        header?: never;
        path: {
          /** @description Account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of delegations */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/delegations/{username}/outgoing': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Outgoing HP Delegations
     * @description Returns list of outgoing delegations from a user.
     */
    get: {
      parameters: {
        query?: {
          /** @description Timestamp used for pagination */start?: string;
          /**
           * @description Max number of returned items -
           *     Can be negative for going backwards and to reverse the sorting<br/>
           *     <sub>min: -1000 | max: 1000</sub>
           */
          limit?: number;
        };
        header?: never;
        path: {
          /** @description Account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of delegations */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/rc-delegations/{username}/incoming': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Incoming RC Delegations
     * @description Returns list of incoming RC delegations to a user.
     */
    get: {
      parameters: {
        query?: {
          /** @description Timestamp used for pagination */start?: string;
          /**
           * @description Max number of returned items -
           *     Can be negative for going backwards and to reverse the sorting<br/>
           *     <sub>min: -1000 | max: 1000</sub>
           */
          limit?: number;
        };
        header?: never;
        path: {
          /** @description Account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of delegations */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/rc-delegations/{username}/outgoing': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Outgoing RC Delegations
     * @description Returns list of outgoing RC delegations from a user.
     */
    get: {
      parameters: {
        query?: {
          /** @description Timestamp used for pagination */start?: string;
          /**
           * @description Max number of returned items -
           *     Can be negative for going backwards and to reverse the sorting<br/>
           *     <sub>min: -1000 | max: 1000</sub>
           */
          limit?: number;
        };
        header?: never;
        path: {
          /** @description Account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of delegations */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/chain/dynamic-global-properties': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Dynamic Global Properties
     * @description Returns dynamic_global_properties optionally at a certain block number.
     */
    get: {
      parameters: {
        query?: {
          /**
           * @description Block number to get the historical values
           *     for that block number
           */
          block_num?: number;
        };
        header?: never;
        path?: never;
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON object */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>;
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/chain/block/{block_num}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get Block
     * @description Returns the block information
     */
    get: {
      parameters: {
        query?: {
          /** @description Set true to include transactions in the returned result */include_trx?: boolean;
        };
        header?: never;
        path: {
          /** @description Block number - 0 to get the head block */block_num: number;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON object */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>;
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/chain/transactions/{block_num}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get Transactions
     * @description Returns the transactions included in a block
     */
    get: {
      parameters: {
        query?: {
          /** @description Set true to include operations in the returned result */include_ops?: boolean;
        };
        header?: never;
        path: {
          /** @description Block number */block_num: number;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description Array of transaction object */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/chain/transaction/{trx_id}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Find Transaction
     * @description Returns the transaction information including the operations
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description Transaction id */trx_id: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON object */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>;
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/chain/operations/{block_num}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get Operations
     * @description Returns the operations included in a block. This doesn't include transaction information (see "Get Transactions" for that).
     */
    get: {
      parameters: {
        query?: {
          /**
           * @description By default will return in the legacy format i.e arrays and formatted assets like `1.000 HIVE`
           *     <br>Set to `false` to return in the object format and assets as nai
           */
          legacy_format?: boolean;
        };
        header?: never;
        path: {
          /** @description Block number */block_num: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description Array of operations */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': unknown[][];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{username}/followers': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Followers
     * @description Returns list of followers of a certain username.
     */
    get: {
      parameters: {
        query?: {
          /** @description Username used for pagination */start?: string;
          /**
           * @description Max number of returned items -
           *     Can be negative for going backwards and to reverse the sorting<br/>
           *     <sub>min: -1000 | max: 1000</sub>
           */
          limit?: number;
        };
        header?: never;
        path: {
          /** @description Account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{username}/following': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Following
     * @description Returns list of following of a certain username.
     */
    get: {
      parameters: {
        query?: {
          /** @description Username used for pagination */start?: string;
          /**
           * @description Max number of returned items -
           *     Can be negative for going backwards and to reverse the sorting<br/>
           *     <sub>min: -1000 | max: 1000</sub>
           */
          limit?: number;
        };
        header?: never;
        path: {
          /** @description Account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{username}/follow-counts': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Follow counts
     * @description Returns number of the followers and following of an account.
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description Account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON object of followers and following count */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': unknown;
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{username}/muting': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Muting accounts
     * @description Returns list of accounts who have muted a certain username.
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description Account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{username}/muted': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Muted accounts
     * @description Returns list of accounts muted by a certain username.
     */
    get: {
      parameters: {
        query?: {
          /** @description Username used for pagination */start?: string;
          /**
           * @description Max number of returned items -
           *     Can be negative for going backwards and to reverse the sorting<br/>
           *     <sub>min: -1000 | max: 1000</sub>
           */
          limit?: number;
        };
        header?: never;
        path: {
          /** @description Account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/accounts/{username}/muted-lists': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Muted lists
     * @description Returns list of mute-lists followed by a certain username.
     *     Each mute-list is a Hive username.
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description Account name */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/market/orderbook': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get Orderbook
     * @description Returns order book.
     */
    get: {
      parameters: {
        query?: {
          /**
           * @description Number of decimal points to group orders in.
           *     - Min: 1
           *     - Max: 6
           */
          decimals?: number;
          /**
           * @description Max number of items in the sell and buy orderbook.
           *     - Min: 1
           *     - Max: 200
           */
          limit?: number;
        };
        header?: never;
        path?: never;
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of orderbook */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/market/open-orders/{username}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Open Orders
     * @description Returns open orders of a user.
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description Account username */username: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of open orders */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/market/all-trade-history': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * All Trade History
     * @description Returns trade history of the market.
     */
    get: {
      parameters: {
        query?: {
          /**
           * @description Max number of items to return - Can be negative for reverse sorting
           *     - Min: -1000
           *     - Max: 1000
           */
          limit?: number; /** @description ID used for pagination */
          start?: number;
        };
        header?: never;
        path?: never;
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of open orders */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/market/tickers': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get Tickers
     * @description Returns basic information about the market.
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path?: never;
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of orders */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/market/charts/{bucket}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Chart Data
     * @description Returns data that can be used to draw charts in different buckets.
     */
    get: {
      parameters: {
        query?: {
          /** @description Timestamp used for pagination */start?: string;
          /**
           * @description Max number of items to return
           *     - min: 1
           *     - Max: 1000
           */
          limit?: number;
        };
        header?: never;
        path: {
          /**
           * @description One of the following:
           *     - 5m
           *     - 30m
           *     - 1h
           *     - 4h
           *     - 1d
           *     - 1w
           *     - 4w
           */
          bucket: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of orders */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': Record<string, never>[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/proposals/{id}/approvals': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Proposal Approvals
     * @description Returns list of accounts voting for a proposal.
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description Proposal id */id: number;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description A JSON array of account names */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': string[];
          };
        }; /** @description Bad request value */
        400: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': components['schemas']['BadRequest'];
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
}
interface components {
  schemas: {
    OperationTypes: ('vote' | 'comment' | 'transfer' | 'transfer_to_vesting' | 'withdraw_vesting' | 'limit_order_create' | 'limit_order_cancel' | 'feed_publish' | 'convert' | 'account_create' | 'account_update' | 'witness_update' | 'account_witness_vote' | 'account_witness_proxy' | 'pow' | 'custom' | 'witness_block_approve' | 'delete_comment' | 'custom_json' | 'comment_options' | 'set_withdraw_vesting_route' | 'limit_order_create2' | 'claim_account' | 'create_claimed_account' | 'request_account_recovery' | 'recover_account' | 'change_recovery_account' | 'escrow_transfer' | 'escrow_dispute' | 'escrow_release' | 'pow2' | 'escrow_approve' | 'transfer_to_savings' | 'transfer_from_savings' | 'cancel_transfer_from_savings' | 'custom_binary' | 'decline_voting_rights' | 'reset_account' | 'set_reset_account' | 'claim_reward_balance' | 'delegate_vesting_shares' | 'account_create_with_delegation' | 'witness_set_properties' | 'account_update2' | 'create_proposal' | 'update_proposal_votes' | 'remove_proposal' | 'update_proposal' | 'collateralized_convert' | 'recurrent_transfer' | 'fill_convert_request' | 'author_reward' | 'curation_reward' | 'comment_reward' | 'liquidity_reward' | 'interest' | 'fill_vesting_withdraw' | 'fill_order' | 'shutdown_witness' | 'fill_transfer_from_savings' | 'hardfork' | 'comment_payout_update' | 'return_vesting_delegation' | 'comment_benefactor_reward' | 'producer_reward' | 'clear_null_account_balance' | 'proposal_pay' | 'dhf_funding' | 'hardfork_hive' | 'hardfork_hive_restore' | 'delayed_voting' | 'consolidate_treasury_balance' | 'effective_comment_vote' | 'ineffective_delete_comment' | 'dhf_conversion' | 'expired_account_notification' | 'changed_recovery_account' | 'transfer_to_vesting_completed' | 'pow_reward' | 'vesting_shares_split' | 'account_created' | 'fill_collateralized_convert_request' | 'system_warning' | 'fill_recurrent_transfer' | 'failed_recurrent_transfer' | 'limit_order_cancelled' | 'producer_missed' | 'proposal_fee' | 'collateralized_convert_immediate_conversion' | 'escrow_approved' | 'escrow_rejected' | 'proxy_cleared' | 'declined_voting_rights')[];
    /**
     * @example {
     *       "status": 404,
     *       "error": "Not Found",
     *       "message": "No items found"
     *     }
     */
    NoItemFound: {
      status?: number;
      error?: string;
      message?: string;
    }; /** @enum {string} */
    Symbol: 'hive' | 'hbd' | 'vests' | 'hive_savings' | 'hbd_savings';
    /**
     * @example {
     *       "status": 400,
     *       "error": "Bad Request",
     *       "message": "Invalid request value"
     *     }
     */
    BadRequest: {
      status?: number;
      error?: string;
      message?: string;
    };
  };
  responses: never;
  parameters: never;
  requestBodies: never;
  headers: never;
  pathItems: never;
}
//#endregion
//#region src/type_generators/types/status.d.ts
interface paths {
  '/status': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get status of all APIs
     * @description Returns the health status of all configured HAF API services
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path?: never;
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description Successful response */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': {
              apps?: {
                /** @description API service name */name: string; /** @description URL path for the API */
                url_path: string;
                /**
                 * @description Health status of the service
                 * @enum {string}
                 */
                status: 'healthy' | 'unhealthy' | 'unknown';
              }[];
            };
          };
        }; /** @description Server error */
        500: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': {
              error?: string;
            };
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
  '/status/{app}': {
    parameters: {
      query?: never;
      header?: never;
      path?: never;
      cookie?: never;
    };
    /**
     * Get status of specific API
     * @description Returns the health status of a specific HAF API service
     */
    get: {
      parameters: {
        query?: never;
        header?: never;
        path: {
          /** @description API name (e.g., hivemind, hafah) */app: string;
        };
        cookie?: never;
      };
      requestBody?: never;
      responses: {
        /** @description Successful response */200: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': {
              /** @description API service name */name: string; /** @description URL path for the API */
              url_path: string;
              /**
               * @description Health status of the service
               * @enum {string}
               */
              status: 'healthy' | 'unhealthy' | 'unknown';
            };
          };
        }; /** @description API not found */
        404: {
          headers: {
            [name: string]: unknown;
          };
          content: {
            'application/json': {
              error?: string;
            };
          };
        };
      };
    };
    put?: never;
    post?: never;
    delete?: never;
    options?: never;
    head?: never;
    patch?: never;
    trace?: never;
  };
}
//#endregion
//#region src/types.d.ts
type AssetSymbol = 'HIVE' | 'HBD' | 'VESTS' | 'STEEM' | 'SBD' | 'TESTS' | 'TBD';
interface Authority {
  weight_threshold: number;
  account_auths: Array<[string, number]>;
  key_auths: Array<[string | PublicKey, number]>;
}
interface Beneficiary {
  account: string;
  weight: number;
}
interface Price {
  base: Asset | string;
  quote: Asset | string;
}
interface ChainProperties {
  account_creation_fee: Asset | string;
  maximum_block_size: number;
  hbd_interest_rate: number;
}
interface WitnessProps {
  account_creation_fee?: Asset | string;
  account_subsidy_budget?: number;
  account_subsidy_decay?: number;
  key?: string | PublicKey;
  maximum_block_size?: number;
  new_signing_key?: string | PublicKey | null;
  hbd_exchange_rate?: Price;
  hbd_interest_rate?: number;
  url?: string;
}
interface VoteOperation {
  voter: string;
  author: string;
  permlink: string;
  weight: number;
}
interface CommentOperation {
  parent_author: string;
  parent_permlink: string;
  author: string;
  permlink: string;
  title: string;
  body: string;
  json_metadata: string;
}
interface TransferOperation {
  from: string;
  to: string;
  amount: Asset | string;
  memo: string;
}
interface TransferToVestingOperation {
  from: string;
  to: string;
  amount: Asset | string;
}
interface WithdrawVestingOperation {
  account: string;
  vesting_shares: Asset | string;
}
interface AccountCreateOperation {
  fee: Asset | string;
  creator: string;
  new_account_name: string;
  owner: Authority;
  active: Authority;
  posting: Authority;
  memo_key: string | PublicKey;
  json_metadata: string;
}
interface AccountCreateWithDelegationOperation {
  fee: Asset | string;
  delegation: Asset | string;
  creator: string;
  new_account_name: string;
  owner: Authority;
  active: Authority;
  posting: Authority;
  memo_key: string | PublicKey;
  json_metadata: string;
  extensions: [];
}
interface AccountUpdateOperation {
  account: string;
  owner?: Authority;
  active?: Authority;
  posting?: Authority;
  memo_key: string | PublicKey;
  json_metadata: string;
}
interface AccountUpdate2Operation {
  account: string;
  owner?: Authority;
  active?: Authority;
  posting?: Authority;
  memo_key?: string | PublicKey;
  json_metadata: string;
  posting_json_metadata: string;
  extensions: [];
}
interface AccountWitnessVoteOperation {
  account: string;
  witness: string;
  approve: boolean;
}
interface AccountWitnessProxyOperation {
  account: string;
  proxy: string;
}
interface ConvertOperation {
  owner: string;
  requestid: number;
  amount: Asset | string;
}
interface CollateralizedConvertOperation {
  owner: string;
  requestid: number;
  amount: Asset | string;
}
interface CustomOperation {
  required_auths: string[];
  id: number;
  data: Uint8Array | string;
}
interface CustomJsonOperation {
  required_auths: string[];
  required_posting_auths: string[];
  id: string;
  json: string;
}
interface ClaimAccountOperation {
  creator: string;
  fee: Asset | string;
  extensions: [];
}
interface CreateClaimedAccountOperation {
  creator: string;
  new_account_name: string;
  owner: Authority;
  active: Authority;
  posting: Authority;
  memo_key: string | PublicKey;
  json_metadata: string;
  extensions: [];
}
interface ClaimRewardBalanceOperation {
  account: string;
  reward_hive: Asset | string;
  reward_hbd: Asset | string;
  reward_vests: Asset | string;
}
interface DelegateVestingSharesOperation {
  delegator: string;
  delegatee: string;
  vesting_shares: Asset | string;
}
interface DeleteCommentOperation {
  author: string;
  permlink: string;
}
interface CommentOptionsOperation {
  author: string;
  permlink: string;
  max_accepted_payout: Asset | string;
  percent_hbd: number;
  allow_votes: boolean;
  allow_curation_rewards: boolean;
  extensions: Array<Array<Beneficiary>>;
}
interface SetWithdrawVestingRouteOperation {
  from_account: string;
  to_account: string;
  percent: number;
  auto_vest: boolean;
}
interface WitnessUpdateOperation {
  owner: string;
  url: string;
  block_signing_key: string | PublicKey;
  props: ChainProperties;
  fee: Asset | string;
}
interface WitnessSetPropertiesOperation {
  owner: string;
  props: Array<[string, string]>;
  extensions: [];
}
interface AccountWitnessVoteOperation {
  account: string;
  witness: string;
  approve: boolean;
}
interface DeclineVotingRightsOperation {
  account: string;
  decline: boolean;
}
interface ResetAccountOperation {
  reset_account: string;
  account_to_reset: string;
  new_owner_authority: Authority;
}
interface SetResetAccountOperation {
  account: string;
  current_reset_account: string;
  reset_account: string;
}
interface TransferToSavingsOperation {
  from: string;
  to: string;
  amount: Asset | string;
  memo: string;
}
interface TransferFromSavingsOperation {
  from: string;
  request_id: number;
  to: string;
  amount: Asset | string;
  memo: string;
}
interface CancelTransferFromSavingsOperation {
  from: string;
  request_id: number;
}
interface LimitOrderCreateOperation {
  owner: string;
  orderid: number;
  amount_to_sell: Asset | string;
  min_to_receive: Asset | string;
  fill_or_kill: boolean;
  expiration: string | Date;
}
interface LimitOrderCreate2Operation {
  owner: string;
  orderid: number;
  amount_to_sell: Asset | string;
  fill_or_kill: boolean;
  exchange_rate: Price;
  expiration: string | Date;
}
interface LimitOrderCancelOperation {
  owner: string;
  orderid: number;
}
interface FeedPublishOperation {
  publisher: string;
  exchange_rate: Price;
}
interface EscrowTransferOperation {
  from: string;
  to: string;
  hbd_amount: Asset | string;
  hive_amount: Asset | string;
  escrow_id: number;
  agent: string;
  fee: Asset | string;
  json_meta: string;
  ratification_deadline: string | Date;
  escrow_expiration: string | Date;
}
interface EscrowDisputeOperation {
  from: string;
  to: string;
  agent: string;
  who: string;
  escrow_id: number;
}
interface EscrowReleaseOperation {
  from: string;
  to: string;
  agent: string;
  who: string;
  receiver: string;
  escrow_id: number;
  hbd_amount: Asset | string;
  hive_amount: Asset | string;
}
interface EscrowApproveOperation {
  from: string;
  to: string;
  agent: string;
  who: string;
  escrow_id: number;
  approve: boolean;
}
interface RecoverAccountOperation {
  account_to_recover: string;
  new_owner_authority: Authority;
  recent_owner_authority: Authority;
  extensions: [];
}
interface RequestAccountRecoveryOperation {
  recovery_account: string;
  account_to_recover: string;
  new_owner_authority: Authority;
  extensions: [];
}
interface ChangeRecoveryAccountOperation {
  account_to_recover: string;
  new_recovery_account: string;
  extensions: [];
}
interface TransferOperation {
  from: string;
  to: string;
  amount: Asset | string;
  memo: string;
}
interface RecurrentTransferOperation {
  from: string;
  to: string;
  amount: Asset | string;
  memo: string;
  recurrence: number;
  executions: number;
  extensions: Array<{
    type: number;
    value: {
      pair_id: number;
    };
  }>;
}
interface CreateProposalOperation {
  creator: string;
  receiver: string;
  start_date: string | Date;
  end_date: string | Date;
  daily_pay: Asset | string;
  subject: string;
  permlink: string;
  extensions: [];
}
interface UpdateProposalOperation {
  proposal_id: number;
  creator: string;
  daily_pay: Asset | string;
  subject: string;
  permlink: string;
  extensions: Array<Array<{
    end_date: string | Date;
  }>>;
}
interface UpdateProposalVotesOperation {
  voter: string;
  proposal_ids: number[];
  approve: boolean;
  extensions: [];
}
interface RemoveProposalOperation {
  proposal_owner: string;
  proposal_ids: number[];
  extensions: [];
}
type Operation = ['vote', VoteOperation] | ['comment', CommentOperation] | ['transfer', TransferOperation] | ['transfer_to_vesting', TransferToVestingOperation] | ['withdraw_vesting', WithdrawVestingOperation] | ['account_create', AccountCreateOperation] | ['account_create_with_delegation', AccountCreateWithDelegationOperation] | ['account_update', AccountUpdateOperation] | ['account_update2', AccountUpdate2Operation] | ['account_witness_vote', AccountWitnessVoteOperation] | ['account_witness_proxy', AccountWitnessProxyOperation] | ['convert', ConvertOperation] | ['collateralized_convert', CollateralizedConvertOperation] | ['custom', CustomOperation] | ['custom_json', CustomJsonOperation] | ['claim_account', ClaimAccountOperation] | ['create_claimed_account', CreateClaimedAccountOperation] | ['claim_reward_balance', ClaimRewardBalanceOperation] | ['delegate_vesting_shares', DelegateVestingSharesOperation] | ['delete_comment', DeleteCommentOperation] | ['comment_options', CommentOptionsOperation] | ['set_withdraw_vesting_route', SetWithdrawVestingRouteOperation] | ['witness_update', WitnessUpdateOperation] | ['witness_set_properties', WitnessSetPropertiesOperation] | ['decline_voting_rights', DeclineVotingRightsOperation] | ['reset_account', ResetAccountOperation] | ['set_reset_account', SetResetAccountOperation] | ['transfer_to_savings', TransferToSavingsOperation] | ['transfer_from_savings', TransferFromSavingsOperation] | ['cancel_transfer_from_savings', CancelTransferFromSavingsOperation] | ['limit_order_create', LimitOrderCreateOperation] | ['limit_order_create2', LimitOrderCreate2Operation] | ['limit_order_cancel', LimitOrderCancelOperation] | ['feed_publish', FeedPublishOperation] | ['escrow_transfer', EscrowTransferOperation] | ['escrow_dispute', EscrowDisputeOperation] | ['escrow_release', EscrowReleaseOperation] | ['escrow_approve', EscrowApproveOperation] | ['recover_account', RecoverAccountOperation] | ['request_account_recovery', RequestAccountRecoveryOperation] | ['change_recovery_account', ChangeRecoveryAccountOperation] | ['recurrent_transfer', RecurrentTransferOperation] | ['create_proposal', CreateProposalOperation] | ['update_proposal', UpdateProposalOperation] | ['update_proposal_votes', UpdateProposalVotesOperation] | ['remove_proposal', RemoveProposalOperation];
type OperationName = Operation[0];
type OperationBody<O extends OperationName> = Extract<Operation, [O, any]>[1];
interface WitnessSetPropertiesParams extends WitnessProps {}
type Extension = [] | [string, any] | any[];
interface TransactionType {
  expiration: string;
  extensions: Extension[];
  operations: [OperationName, OperationBody<OperationName>][];
  ref_block_num: number;
  ref_block_prefix: number;
  signatures: string[];
}
interface BroadcastError {
  id: number;
  jsonrpc: string;
  error: {
    code: number;
    message: string;
    data?: any;
  };
}
type CallResponse<T = any> = {
  id: number;
  jsonrpc: string;
  result: T;
} | BroadcastError;
interface BroadcastResult {
  tx_id: string;
  status: 'unknown' | 'within_irreversible_block' | 'expired_irreversible' | 'too_old';
}
interface DigestData {
  digest: Uint8Array;
  txId: string;
}
type APIMethods = 'balance' | 'hafah' | 'hafbe' | 'hivemind' | 'hivesense' | 'reputation' | 'nft-tracker' | 'hafsql' | 'status';
interface APIPaths {
  balance: paths$8;
  hafah: paths$7;
  hafbe: paths$6;
  hivemind: paths$5;
  hivesense: paths$4;
  reputation: paths$3;
  'nft-tracker': paths$2;
  hafsql: paths$1;
  status: paths;
}
interface TransactionStatus {
  status: 'unknown' | 'within_mempool' | 'within_reversible_block' | 'within_irreversible_block' | 'expired_reversible' | 'expired_irreversible' | 'too_old';
}
//#endregion
//#region src/Transaction.d.ts
interface TransactionOptions {
  transaction?: TransactionType | Transaction;
  /**
   * Transaction expiration in milliseconds (ms) - max 86400000 (24 hours)
   * @default 60_000
   */
  expiration?: number;
}
declare class Transaction {
  transaction?: TransactionType;
  expiration: number;
  private txId?;
  constructor(options?: TransactionOptions);
  /**
   * Adds an operation to the transaction. If no transaction exists, creates one first.
   * @template O Operation name type for type safety
   * @param operationName The name/type of the operation to add (e.g., 'transfer', 'vote', 'comment')
   * @param operationBody The operation data/body for the specified operation type
   * @returns Promise that resolves when the operation is added
   * @throws Error if transaction creation fails or global properties cannot be retrieved
   */
  addOperation<O extends OperationName>(operationName: O, operationBody: OperationBody<O>): Promise<void>;
  /**
   * Signs the transaction with the provided key(s), supporting both single and multi-signature transactions.
   * For multi-signature, you can sign with all keys at once or sign individually by calling this method multiple times.
   * @param keys Single PrivateKey or array of PrivateKeys to sign the transaction with
   * @returns The signed transaction
   * @throws Error if no transaction exists to sign
   */
  sign(keys: PrivateKey | PrivateKey[]): TransactionType;
  /**
   * Broadcasts the signed transaction to the Hive network.
   * Automatically handles retries and duplicate transaction detection.
   * @param checkStatus By default (false) the transaction is not guaranteed to be included in a block.
   * For example the transaction can expire while waiting in mempool.
   * If you pass true here, the function will wait for the transaction to be either included or dropped
   * before returning a result.
   * @returns Promise resolving to broadcast result
   * @throws Error if no transaction exists or transaction is not signed or transaction got rejected
   */
  broadcast(checkStatus?: boolean): Promise<BroadcastResult>;
  /**
   * Returns the transaction digest containing the transaction ID and hash.
   * The digest can be used to verify signatures and for transaction identification.
   * @returns DigestData containing transaction ID and hash
   * @throws Error if no transaction exists
   */
  digest(): DigestData;
  /**
   * Adds a signature to an already created transaction. Useful when signing with external tools.
   * Multiple signatures can be added one at a time for multi-signature transactions.
   * @param signature The signature string in hex format (must be exactly 130 characters)
   * @returns The transaction with the added signature
   * @throws Error if no transaction exists or signature format is invalid
   */
  addSignature(signature: string): TransactionType;
  /** Get status of this transaction. Usually called internally after broadcasting. */
  checkStatus(): Promise<TransactionStatus>;
  /**
   * Creates the transaction structure and initializes it with blockchain data.
   * Retrieves current head block information and sets up reference block data.
   * @private
   * @param expiration Transaction expiration in milliseconds
   */
  private createTransaction;
}
//#endregion
//#region src/helpers/call.d.ts
/**
 * Makes API calls to Hive blockchain nodes with automatic retry and failover support.
 * Automatically switches between multiple nodes.
 *
 * The method supports JSON-RPC 2.0 protocol used by Hive API nodes.
 * If the current node fails, it will automatically try the next node in the list.
 *
 * @param method - The API method name (e.g., 'condenser_api.get_accounts')
 * @param params - Parameters for the API method as array or object
 * @param timeout - Request timeout in milliseconds (default: config.timeout)
 * @param retry - Number of retry attempts before throwing an error (default: config.retry)
 * @returns Promise resolving to the API response
 * @throws Error if all retry attempts fail or on RPCError
 *
 * @example
 * ```typescript
 * import { callRPC } from 'hive-tx'
 *
 * // Get account information
 * const accounts = await callRPC('condenser_api.get_accounts', [['alice']])
 *
 * // Custom timeout and retry settings
 * const data = await callRPC('condenser_api.get_content', ['alice', 'test-post'], 10_000, 8)
 * ```
 */
declare const callRPC: <T = any>(method: string, params?: any[] | object, timeout?: number, retry?: number) => Promise<T>;
type GetResponse<T> = T extends {
  responses: {
    '200'?: {
      content: {
        'application/json': infer R;
      };
    };
  };
} ? R : undefined;
type SafeGet<T> = T extends {
  get: infer G;
} ? G : undefined;
type SafePathParams<T> = SafeGet<T> extends {
  parameters: {
    path: infer P;
  };
} ? P : undefined;
type SafeQueryParams<T> = SafeGet<T> extends {
  parameters: {
    query: infer Q;
  };
} ? Q : SafeGet<T> extends {
  parameters: {
    query?: infer Q;
  };
} ? Q : undefined;
type ParamsForEndpoint<T> = SafePathParams<T> & SafeQueryParams<T> extends undefined ? SafePathParams<T> : SafePathParams<T> & SafeQueryParams<T>;
/**
 * Makes REST API calls to Hive blockchain REST endpoints with automatic retry and failover support.
 * Automatically switches between multiple REST nodes and handles path/query parameter processing.
 *
 * This function provides type-safe access to various Hive REST APIs including balance, hafah, hafbe,
 * hivemind, hivesense, reputation, nft-tracker, hafsql, and status APIs.
 *
 * @template Api - The REST API method type (e.g., 'balance', 'hafah', 'hivemind', etc.)
 * @template P - The endpoint path type for the specified API
 *
 * @param api - The REST API method name to call
 * @param endpoint - The specific endpoint path within the API
 * @param params - Optional parameters for path and query string replacement
 * @param timeout - Request timeout in milliseconds (default: config.timeout)
 * @param retry - Number of retry attempts before throwing an error (default: config.retry)
 *
 * @returns Promise resolving to the API response data with proper typing
 * @throws Error if all retry attempts fail
 *
 * @example
 * ```typescript
 * import { callREST } from 'hive-tx'
 *
 * // Get account balance
 * const balance = await callREST('balance', '/accounts/{account-name}/balances', { "account-name": 'alice' })
 *
 * const data = await callREST('balance', '/accounts/{account-name}/aggregated-history', {
 *  'account-name': 'mahdiyari',
 *  'coin-type': 'HBD'
 * })
 *
 * // Custom timeout and retry settings
 * const data = await callREST('status', '/status', undefined, 10_000, 3)
 * ```
 */
declare function callREST<Api extends APIMethods, P extends keyof APIPaths[Api]>(api: Api, endpoint: P, params?: ParamsForEndpoint<APIPaths[Api][P]>, timeout?: number, retry?: number): Promise<GetResponse<SafeGet<APIPaths[Api][P]>>>;
/**
 * Make a JSONRPC call with quorum. The method will cross-check the result
 * with `quorum` number of nodes before returning the result.
 * @param method - The API method name (e.g., 'condenser_api.get_accounts')
 * @param params - Parameters for the API method as array or object
 * @param quorum - Default: 2 (recommended)
 */
declare const callWithQuorum: <T = any>(method: string, params?: any[] | object, quorum?: number) => Promise<T>;
//#endregion
//#region src/config.d.ts
/**
 * Configuration object for customizing hive-tx library behavior.
 * Modify these values to change the default node endpoints, timeout, and other settings.
 */
declare const config: {
  /**
   * Array of Hive API node endpoints for load balancing and failover.
   * @default Array of multiple Hive API endpoints
   */
  nodes: string[];
  /**
   * Array Hive API node endpoints that support REST APIs
   * Note: Without the trailing /
   */
  restNodes: string[];
  /**
   * The Hive blockchain chain ID for transaction signing and verification.
   * @default Mainnet chain ID
   */
  chain_id: string;
  /**
   * Address prefix used for public key formatting (STM for mainnet).
   * @default 'STM'
   */
  address_prefix: string;
  /**
   * Timeout in milliseconds for individual API calls.
   * @default 10000
   */
  timeout: number;
  /**
   * Number of retry attempts for failed API calls before throwing an error.
   * @default 8
   */
  retry: number;
};
//#endregion
//#region src/helpers/memo.d.ts
type Memo = {
  /**
   * Encrypts a memo for secure private messaging
   */
  encode(privateKey: string | PrivateKey, publicKey: string | PublicKey, memo: string, testNonce?: any): string;
  /**
   * Decrypts a memo message
   */
  decode(privateKey: string | PrivateKey, memo: string): string;
};
/**
 * Memo utilities for encrypting and decrypting private messages between Hive users.
 * Uses AES encryption with ECDH key exchange for secure communication.
 *
 * Messages must start with '#' to be encrypted/decrypted.
 * Plain text messages (without '#') are returned unchanged.
 *
 * @example
 * ```typescript
 * import { Memo, PrivateKey, PublicKey } from 'hive-tx'
 *
 * // Encrypt a message
 * const encrypted = Memo.encode(senderPrivateKey, recipientPublicKey, '#Hello World')
 *
 * // Decrypt a message
 * const decrypted = Memo.decode(recipientPrivateKey, encrypted)
 * console.log(decrypted) // '#Hello World'
 * ```
 */
declare const Memo: {
  decode: (privateKey: string | PrivateKey, memo: string) => string;
  encode: (privateKey: string | PrivateKey, publicKey: string | PublicKey, memo: string, testNonce?: any) => string;
};
declare namespace utils_d_exports {
  export { WitnessProps$1 as WitnessProps, buildWitnessSetProperties, makeBitMaskFilter, operations, validateUsername };
}
interface WitnessProps$1 {
  account_creation_fee?: string;
  account_subsidy_budget?: number;
  account_subsidy_decay?: number;
  key: PublicKey | string;
  maximum_block_size?: number;
  new_signing_key?: PublicKey | string | null;
  hbd_exchange_rate?: {
    base: string;
    quote: string;
  };
  hbd_interest_rate?: number;
  url?: string;
}
/** Return null for a valid username */
declare const validateUsername: (username: string) => null | string;
declare const operations: {
  vote: number;
  comment: number;
  transfer: number;
  transfer_to_vesting: number;
  withdraw_vesting: number;
  limit_order_create: number;
  limit_order_cancel: number;
  feed_publish: number;
  convert: number;
  account_create: number;
  account_update: number;
  witness_update: number;
  account_witness_vote: number;
  account_witness_proxy: number;
  pow: number;
  custom: number;
  report_over_production: number;
  delete_comment: number;
  custom_json: number;
  comment_options: number;
  set_withdraw_vesting_route: number;
  limit_order_create2: number;
  claim_account: number;
  create_claimed_account: number;
  request_account_recovery: number;
  recover_account: number;
  change_recovery_account: number;
  escrow_transfer: number;
  escrow_dispute: number;
  escrow_release: number;
  pow2: number;
  escrow_approve: number;
  transfer_to_savings: number;
  transfer_from_savings: number;
  cancel_transfer_from_savings: number;
  custom_binary: number;
  decline_voting_rights: number;
  reset_account: number;
  set_reset_account: number;
  claim_reward_balance: number;
  delegate_vesting_shares: number;
  account_create_with_delegation: number;
  witness_set_properties: number;
  account_update2: number;
  create_proposal: number;
  update_proposal_votes: number;
  remove_proposal: number;
  update_proposal: number;
  collateralized_convert: number;
  recurrent_transfer: number;
  fill_convert_request: number;
  author_reward: number;
  curation_reward: number;
  comment_reward: number;
  liquidity_reward: number;
  interest: number;
  fill_vesting_withdraw: number;
  fill_order: number;
  shutdown_witness: number;
  fill_transfer_from_savings: number;
  hardfork: number;
  comment_payout_update: number;
  return_vesting_delegation: number;
  comment_benefactor_reward: number;
  producer_reward: number;
  clear_null_account_balance: number;
  proposal_pay: number;
  sps_fund: number;
  hardfork_hive: number;
  hardfork_hive_restore: number;
  delayed_voting: number;
  consolidate_treasury_balance: number;
  effective_comment_vote: number;
  ineffective_delete_comment: number;
  sps_convert: number;
  expired_account_notification: number;
  changed_recovery_account: number;
  transfer_to_vesting_completed: number;
  pow_reward: number;
  vesting_shares_split: number;
  account_created: number;
  fill_collateralized_convert_request: number;
  system_warning: number;
  fill_recurrent_transfer: number;
  failed_recurrent_transfer: number;
  limit_order_cancelled: number;
  producer_missed: number;
  proposal_fee: number;
  collateralized_convert_immediate_conversion: number;
  escrow_approved: number;
  escrow_rejected: number;
  proxy_cleared: number;
  declined_voting_rights: number;
};
/**
 * Make bitmask filter to be used with get_account_history call
 */
declare const makeBitMaskFilter: (allowedOperations: number[]) => any[];
declare const buildWitnessSetProperties: (owner: string, props: WitnessProps$1) => ["witness_set_properties", {
  extensions: never[];
  owner: string;
  props: any;
}];
//#endregion
export { APIMethods, APIPaths, AccountCreateOperation, AccountCreateWithDelegationOperation, AccountUpdate2Operation, AccountUpdateOperation, AccountWitnessProxyOperation, AccountWitnessVoteOperation, AssetSymbol, Authority, Beneficiary, BroadcastError, BroadcastResult, CallResponse, CancelTransferFromSavingsOperation, ChainProperties, ChangeRecoveryAccountOperation, ClaimAccountOperation, ClaimRewardBalanceOperation, CollateralizedConvertOperation, CommentOperation, CommentOptionsOperation, ConvertOperation, CreateClaimedAccountOperation, CreateProposalOperation, CustomJsonOperation, CustomOperation, DeclineVotingRightsOperation, DelegateVestingSharesOperation, DeleteCommentOperation, DigestData, EscrowApproveOperation, EscrowDisputeOperation, EscrowReleaseOperation, EscrowTransferOperation, Extension, FeedPublishOperation, LimitOrderCancelOperation, LimitOrderCreate2Operation, LimitOrderCreateOperation, Memo, Operation, OperationBody, OperationName, Price, PrivateKey, PublicKey, RecoverAccountOperation, RecurrentTransferOperation, RemoveProposalOperation, RequestAccountRecoveryOperation, ResetAccountOperation, SetResetAccountOperation, SetWithdrawVestingRouteOperation, Signature, Transaction, TransactionStatus, TransactionType, TransferFromSavingsOperation, TransferOperation, TransferToSavingsOperation, TransferToVestingOperation, UpdateProposalOperation, UpdateProposalVotesOperation, VoteOperation, WithdrawVestingOperation, WitnessProps, WitnessSetPropertiesOperation, WitnessSetPropertiesParams, WitnessUpdateOperation, callREST, callRPC, callWithQuorum, config, utils_d_exports as utils };