import { Struct, Vector, u8, str, Tuple } from 'scale-ts';
import { lookup } from './lookup.mjs';
import { v15Pallet } from './pallets.mjs';
import '../../utils/ss58-util.mjs';
import '../scale/Binary.mjs';
import '../scale/bitSequence.mjs';
import '../scale/char.mjs';
import { compactNumber } from '../scale/compact.mjs';
import { Hex } from '../scale/Hex.mjs';
import '../scale/fixed-str.mjs';
import '../scale/Variant.mjs';
import '../scale/ethAccount.mjs';
import '../scale/shaped.mjs';
import '../scale/BitSeq.mjs';
import { runtimeApiV15 } from './runtime-api.mjs';

const extrinsic$1 = Struct({
  version: u8,
  address: compactNumber,
  call: compactNumber,
  signature: compactNumber,
  extra: compactNumber,
  signedExtensions: Vector(
    Struct({
      identifier: str,
      type: compactNumber,
      additionalSigned: compactNumber
    })
  )
});
const v15 = Struct({
  lookup,
  pallets: Vector(Struct(v15Pallet)),
  extrinsic: extrinsic$1,
  type: compactNumber,
  apis: Vector(runtimeApiV15),
  outerEnums: Struct({
    call: compactNumber,
    event: compactNumber,
    error: compactNumber
  }),
  custom: Vector(Tuple(str, Struct({ type: compactNumber, value: Hex() })))
});

export { v15 };
//# sourceMappingURL=v15.mjs.map
