| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466 | 
							- /**
 
-  *  A fragment is a single item from an ABI, which may represent any of:
 
-  *
 
-  *  - [Functions](FunctionFragment)
 
-  *  - [Events](EventFragment)
 
-  *  - [Constructors](ConstructorFragment)
 
-  *  - Custom [Errors](ErrorFragment)
 
-  *  - [Fallback or Receive](FallbackFragment) functions
 
-  *
 
-  *  @_subsection api/abi/abi-coder:Fragments  [about-fragments]
 
-  */
 
- /**
 
-  *  A Type description in a [JSON ABI format](link-solc-jsonabi).
 
-  */
 
- export interface JsonFragmentType {
 
-     /**
 
-      *  The parameter name.
 
-      */
 
-     readonly name?: string;
 
-     /**
 
-      *  If the parameter is indexed.
 
-      */
 
-     readonly indexed?: boolean;
 
-     /**
 
-      *  The type of the parameter.
 
-      */
 
-     readonly type?: string;
 
-     /**
 
-      *  The internal Solidity type.
 
-      */
 
-     readonly internalType?: string;
 
-     /**
 
-      *  The components for a tuple.
 
-      */
 
-     readonly components?: ReadonlyArray<JsonFragmentType>;
 
- }
 
- /**
 
-  *  A fragment for a method, event or error in a [JSON ABI format](link-solc-jsonabi).
 
-  */
 
- export interface JsonFragment {
 
-     /**
 
-      *  The name of the error, event, function, etc.
 
-      */
 
-     readonly name?: string;
 
-     /**
 
-      *  The type of the fragment (e.g. ``event``, ``"function"``, etc.)
 
-      */
 
-     readonly type?: string;
 
-     /**
 
-      *  If the event is anonymous.
 
-      */
 
-     readonly anonymous?: boolean;
 
-     /**
 
-      *  If the function is payable.
 
-      */
 
-     readonly payable?: boolean;
 
-     /**
 
-      *  If the function is constant.
 
-      */
 
-     readonly constant?: boolean;
 
-     /**
 
-      *  The mutability state of the function.
 
-      */
 
-     readonly stateMutability?: string;
 
-     /**
 
-      *  The input parameters.
 
-      */
 
-     readonly inputs?: ReadonlyArray<JsonFragmentType>;
 
-     /**
 
-      *  The output parameters.
 
-      */
 
-     readonly outputs?: ReadonlyArray<JsonFragmentType>;
 
-     /**
 
-      *  The gas limit to use when sending a transaction for this function.
 
-      */
 
-     readonly gas?: string;
 
- }
 
- /**
 
-  *  The format to serialize the output as.
 
-  *
 
-  *  **``"sighash"``** - the bare formatting, used to compute the selector
 
-  *  or topic hash; this format cannot be reversed (as it discards ``indexed``)
 
-  *  so cannot by used to export an [[Interface]].
 
-  *
 
-  *  **``"minimal"``** - Human-Readable ABI with minimal spacing and without
 
-  *  names, so it is compact, but will result in Result objects that cannot
 
-  *  be accessed by name.
 
-  *
 
-  *  **``"full"``** - Full Human-Readable ABI, with readable spacing and names
 
-  *  intact; this is generally the recommended format.
 
-  *
 
-  *  **``"json"``** - The [JSON ABI format](link-solc-jsonabi).
 
-  */
 
- export type FormatType = "sighash" | "minimal" | "full" | "json";
 
- /**
 
-  *  When [walking](ParamType-walk) a [[ParamType]], this is called
 
-  *  on each component.
 
-  */
 
- export type ParamTypeWalkFunc = (type: string, value: any) => any;
 
- /**
 
-  *  When [walking asynchronously](ParamType-walkAsync) a [[ParamType]],
 
-  *  this is called on each component.
 
-  */
 
- export type ParamTypeWalkAsyncFunc = (type: string, value: any) => any | Promise<any>;
 
- /**
 
-  *  Each input and output of a [[Fragment]] is an Array of **ParamType**.
 
-  */
 
- export declare class ParamType {
 
-     #private;
 
-     /**
 
-      *  The local name of the parameter (or ``""`` if unbound)
 
-      */
 
-     readonly name: string;
 
-     /**
 
-      *  The fully qualified type (e.g. ``"address"``, ``"tuple(address)"``,
 
-      *  ``"uint256[3][]"``)
 
-      */
 
-     readonly type: string;
 
-     /**
 
-      *  The base type (e.g. ``"address"``, ``"tuple"``, ``"array"``)
 
-      */
 
-     readonly baseType: string;
 
-     /**
 
-      *  True if the parameters is indexed.
 
-      *
 
-      *  For non-indexable types this is ``null``.
 
-      */
 
-     readonly indexed: null | boolean;
 
-     /**
 
-      *  The components for the tuple.
 
-      *
 
-      *  For non-tuple types this is ``null``.
 
-      */
 
-     readonly components: null | ReadonlyArray<ParamType>;
 
-     /**
 
-      *  The array length, or ``-1`` for dynamic-lengthed arrays.
 
-      *
 
-      *  For non-array types this is ``null``.
 
-      */
 
-     readonly arrayLength: null | number;
 
-     /**
 
-      *  The type of each child in the array.
 
-      *
 
-      *  For non-array types this is ``null``.
 
-      */
 
-     readonly arrayChildren: null | ParamType;
 
-     /**
 
-      *  @private
 
-      */
 
-     constructor(guard: any, name: string, type: string, baseType: string, indexed: null | boolean, components: null | ReadonlyArray<ParamType>, arrayLength: null | number, arrayChildren: null | ParamType);
 
-     /**
 
-      *  Return a string representation of this type.
 
-      *
 
-      *  For example,
 
-      *
 
-      *  ``sighash" => "(uint256,address)"``
 
-      *
 
-      *  ``"minimal" => "tuple(uint256,address) indexed"``
 
-      *
 
-      *  ``"full" => "tuple(uint256 foo, address bar) indexed baz"``
 
-      */
 
-     format(format?: FormatType): string;
 
-     /**
 
-      *  Returns true if %%this%% is an Array type.
 
-      *
 
-      *  This provides a type gaurd ensuring that [[arrayChildren]]
 
-      *  and [[arrayLength]] are non-null.
 
-      */
 
-     isArray(): this is (ParamType & {
 
-         arrayChildren: ParamType;
 
-         arrayLength: number;
 
-     });
 
-     /**
 
-      *  Returns true if %%this%% is a Tuple type.
 
-      *
 
-      *  This provides a type gaurd ensuring that [[components]]
 
-      *  is non-null.
 
-      */
 
-     isTuple(): this is (ParamType & {
 
-         components: ReadonlyArray<ParamType>;
 
-     });
 
-     /**
 
-      *  Returns true if %%this%% is an Indexable type.
 
-      *
 
-      *  This provides a type gaurd ensuring that [[indexed]]
 
-      *  is non-null.
 
-      */
 
-     isIndexable(): this is (ParamType & {
 
-         indexed: boolean;
 
-     });
 
-     /**
 
-      *  Walks the **ParamType** with %%value%%, calling %%process%%
 
-      *  on each type, destructing the %%value%% recursively.
 
-      */
 
-     walk(value: any, process: ParamTypeWalkFunc): any;
 
-     /**
 
-      *  Walks the **ParamType** with %%value%%, asynchronously calling
 
-      *  %%process%% on each type, destructing the %%value%% recursively.
 
-      *
 
-      *  This can be used to resolve ENS names by walking and resolving each
 
-      *  ``"address"`` type.
 
-      */
 
-     walkAsync(value: any, process: ParamTypeWalkAsyncFunc): Promise<any>;
 
-     /**
 
-      *  Creates a new **ParamType** for %%obj%%.
 
-      *
 
-      *  If %%allowIndexed%% then the ``indexed`` keyword is permitted,
 
-      *  otherwise the ``indexed`` keyword will throw an error.
 
-      */
 
-     static from(obj: any, allowIndexed?: boolean): ParamType;
 
-     /**
 
-      *  Returns true if %%value%% is a **ParamType**.
 
-      */
 
-     static isParamType(value: any): value is ParamType;
 
- }
 
- /**
 
-  *  The type of a [[Fragment]].
 
-  */
 
- export type FragmentType = "constructor" | "error" | "event" | "fallback" | "function" | "struct";
 
- /**
 
-  *  An abstract class to represent An individual fragment from a parse ABI.
 
-  */
 
- export declare abstract class Fragment {
 
-     /**
 
-      *  The type of the fragment.
 
-      */
 
-     readonly type: FragmentType;
 
-     /**
 
-      *  The inputs for the fragment.
 
-      */
 
-     readonly inputs: ReadonlyArray<ParamType>;
 
-     /**
 
-      *  @private
 
-      */
 
-     constructor(guard: any, type: FragmentType, inputs: ReadonlyArray<ParamType>);
 
-     /**
 
-      *  Returns a string representation of this fragment as %%format%%.
 
-      */
 
-     abstract format(format?: FormatType): string;
 
-     /**
 
-      *  Creates a new **Fragment** for %%obj%%, wich can be any supported
 
-      *  ABI frgament type.
 
-      */
 
-     static from(obj: any): Fragment;
 
-     /**
 
-      *  Returns true if %%value%% is a [[ConstructorFragment]].
 
-      */
 
-     static isConstructor(value: any): value is ConstructorFragment;
 
-     /**
 
-      *  Returns true if %%value%% is an [[ErrorFragment]].
 
-      */
 
-     static isError(value: any): value is ErrorFragment;
 
-     /**
 
-      *  Returns true if %%value%% is an [[EventFragment]].
 
-      */
 
-     static isEvent(value: any): value is EventFragment;
 
-     /**
 
-      *  Returns true if %%value%% is a [[FunctionFragment]].
 
-      */
 
-     static isFunction(value: any): value is FunctionFragment;
 
-     /**
 
-      *  Returns true if %%value%% is a [[StructFragment]].
 
-      */
 
-     static isStruct(value: any): value is StructFragment;
 
- }
 
- /**
 
-  *  An abstract class to represent An individual fragment
 
-  *  which has a name from a parse ABI.
 
-  */
 
- export declare abstract class NamedFragment extends Fragment {
 
-     /**
 
-      *  The name of the fragment.
 
-      */
 
-     readonly name: string;
 
-     /**
 
-      *  @private
 
-      */
 
-     constructor(guard: any, type: FragmentType, name: string, inputs: ReadonlyArray<ParamType>);
 
- }
 
- /**
 
-  *  A Fragment which represents a //Custom Error//.
 
-  */
 
- export declare class ErrorFragment extends NamedFragment {
 
-     /**
 
-      *  @private
 
-      */
 
-     constructor(guard: any, name: string, inputs: ReadonlyArray<ParamType>);
 
-     /**
 
-      *  The Custom Error selector.
 
-      */
 
-     get selector(): string;
 
-     /**
 
-      *  Returns a string representation of this fragment as %%format%%.
 
-      */
 
-     format(format?: FormatType): string;
 
-     /**
 
-      *  Returns a new **ErrorFragment** for %%obj%%.
 
-      */
 
-     static from(obj: any): ErrorFragment;
 
-     /**
 
-      *  Returns ``true`` and provides a type guard if %%value%% is an
 
-      *  **ErrorFragment**.
 
-      */
 
-     static isFragment(value: any): value is ErrorFragment;
 
- }
 
- /**
 
-  *  A Fragment which represents an Event.
 
-  */
 
- export declare class EventFragment extends NamedFragment {
 
-     /**
 
-      *  Whether this event is anonymous.
 
-      */
 
-     readonly anonymous: boolean;
 
-     /**
 
-      *  @private
 
-      */
 
-     constructor(guard: any, name: string, inputs: ReadonlyArray<ParamType>, anonymous: boolean);
 
-     /**
 
-      *  The Event topic hash.
 
-      */
 
-     get topicHash(): string;
 
-     /**
 
-      *  Returns a string representation of this event as %%format%%.
 
-      */
 
-     format(format?: FormatType): string;
 
-     /**
 
-      *  Return the topic hash for an event with %%name%% and %%params%%.
 
-      */
 
-     static getTopicHash(name: string, params?: Array<any>): string;
 
-     /**
 
-      *  Returns a new **EventFragment** for %%obj%%.
 
-      */
 
-     static from(obj: any): EventFragment;
 
-     /**
 
-      *  Returns ``true`` and provides a type guard if %%value%% is an
 
-      *  **EventFragment**.
 
-      */
 
-     static isFragment(value: any): value is EventFragment;
 
- }
 
- /**
 
-  *  A Fragment which represents a constructor.
 
-  */
 
- export declare class ConstructorFragment extends Fragment {
 
-     /**
 
-      *  Whether the constructor can receive an endowment.
 
-      */
 
-     readonly payable: boolean;
 
-     /**
 
-      *  The recommended gas limit for deployment or ``null``.
 
-      */
 
-     readonly gas: null | bigint;
 
-     /**
 
-      *  @private
 
-      */
 
-     constructor(guard: any, type: FragmentType, inputs: ReadonlyArray<ParamType>, payable: boolean, gas: null | bigint);
 
-     /**
 
-      *  Returns a string representation of this constructor as %%format%%.
 
-      */
 
-     format(format?: FormatType): string;
 
-     /**
 
-      *  Returns a new **ConstructorFragment** for %%obj%%.
 
-      */
 
-     static from(obj: any): ConstructorFragment;
 
-     /**
 
-      *  Returns ``true`` and provides a type guard if %%value%% is a
 
-      *  **ConstructorFragment**.
 
-      */
 
-     static isFragment(value: any): value is ConstructorFragment;
 
- }
 
- /**
 
-  *  A Fragment which represents a method.
 
-  */
 
- export declare class FallbackFragment extends Fragment {
 
-     /**
 
-      *  If the function can be sent value during invocation.
 
-      */
 
-     readonly payable: boolean;
 
-     constructor(guard: any, inputs: ReadonlyArray<ParamType>, payable: boolean);
 
-     /**
 
-      *  Returns a string representation of this fallback as %%format%%.
 
-      */
 
-     format(format?: FormatType): string;
 
-     /**
 
-      *  Returns a new **FallbackFragment** for %%obj%%.
 
-      */
 
-     static from(obj: any): FallbackFragment;
 
-     /**
 
-      *  Returns ``true`` and provides a type guard if %%value%% is a
 
-      *  **FallbackFragment**.
 
-      */
 
-     static isFragment(value: any): value is FallbackFragment;
 
- }
 
- /**
 
-  *  A Fragment which represents a method.
 
-  */
 
- export declare class FunctionFragment extends NamedFragment {
 
-     /**
 
-      *  If the function is constant (e.g. ``pure`` or ``view`` functions).
 
-      */
 
-     readonly constant: boolean;
 
-     /**
 
-      *  The returned types for the result of calling this function.
 
-      */
 
-     readonly outputs: ReadonlyArray<ParamType>;
 
-     /**
 
-      *  The state mutability (e.g. ``payable``, ``nonpayable``, ``view``
 
-      *  or ``pure``)
 
-      */
 
-     readonly stateMutability: "payable" | "nonpayable" | "view" | "pure";
 
-     /**
 
-      *  If the function can be sent value during invocation.
 
-      */
 
-     readonly payable: boolean;
 
-     /**
 
-      *  The recommended gas limit to send when calling this function.
 
-      */
 
-     readonly gas: null | bigint;
 
-     /**
 
-      *  @private
 
-      */
 
-     constructor(guard: any, name: string, stateMutability: "payable" | "nonpayable" | "view" | "pure", inputs: ReadonlyArray<ParamType>, outputs: ReadonlyArray<ParamType>, gas: null | bigint);
 
-     /**
 
-      *  The Function selector.
 
-      */
 
-     get selector(): string;
 
-     /**
 
-      *  Returns a string representation of this function as %%format%%.
 
-      */
 
-     format(format?: FormatType): string;
 
-     /**
 
-      *  Return the selector for a function with %%name%% and %%params%%.
 
-      */
 
-     static getSelector(name: string, params?: Array<any>): string;
 
-     /**
 
-      *  Returns a new **FunctionFragment** for %%obj%%.
 
-      */
 
-     static from(obj: any): FunctionFragment;
 
-     /**
 
-      *  Returns ``true`` and provides a type guard if %%value%% is a
 
-      *  **FunctionFragment**.
 
-      */
 
-     static isFragment(value: any): value is FunctionFragment;
 
- }
 
- /**
 
-  *  A Fragment which represents a structure.
 
-  */
 
- export declare class StructFragment extends NamedFragment {
 
-     /**
 
-      *  @private
 
-      */
 
-     constructor(guard: any, name: string, inputs: ReadonlyArray<ParamType>);
 
-     /**
 
-      *  Returns a string representation of this struct as %%format%%.
 
-      */
 
-     format(): string;
 
-     /**
 
-      *  Returns a new **StructFragment** for %%obj%%.
 
-      */
 
-     static from(obj: any): StructFragment;
 
-     /**
 
-      *  Returns ``true`` and provides a type guard if %%value%% is a
 
-      *  **StructFragment**.
 
-      */
 
-     static isFragment(value: any): value is FunctionFragment;
 
- }
 
- //# sourceMappingURL=fragments.d.ts.map
 
 
  |