import { TypeRegistry } from '@polkadot/types'; import { ExtDef } from '@polkadot/types/extrinsic/signedExtensions/types'; import { AnyJson, OverrideBundleType, RegistryTypes } from '@polkadot/types/types'; import { ChainProperties } from '../../types'; export interface GetRegistryBaseArgs { /** * Chain properties, normally returned by the `system_properties` call. */ chainProperties: ChainProperties | AnyJson; /** * Chain specific type definitions to registry. */ specTypes: RegistryTypes; /** * Used to set the correct metadata for the registry */ metadataRpc: `0x${string}`; /** * Used to reduce the metadata size by only having the calls */ asCallsOnlyArg?: boolean; /** * Array of signedExtensions */ signedExtensions?: string[]; /** * User extensions used to inject into the type registry */ userExtensions?: ExtDef; /** * OverrideTypesBundle to set to registry */ typesBundle?: OverrideBundleType; /** * Additional types to register in the registry. */ additionalTypes?: RegistryTypes; } /** * Create a type registry given chainProperties, specTypes, and metadataRpc. */ export declare function getRegistryBase({ chainProperties, specTypes, metadataRpc, asCallsOnlyArg, signedExtensions, userExtensions, typesBundle, additionalTypes, }: GetRegistryBaseArgs): TypeRegistry;