@mysten/sui
Version:
Sui TypeScript API
708 lines (707 loc) • 22.4 kB
text/typescript
import { Bcs } from "./bcs.mjs";
import { Object as Object$1 } from "./object.mjs";
import { FieldMask } from "../../../google/protobuf/field_mask.mjs";
import { MessageType } from "@protobuf-ts/runtime";
import { ServiceType } from "@protobuf-ts/runtime-rpc";
//#region src/grpc/proto/sui/rpc/v2/state_service.d.ts
/**
* Request message for `NodeService.GetCoinInfo`.
*
* @generated from protobuf message sui.rpc.v2.GetCoinInfoRequest
*/
interface GetCoinInfoRequest {
/**
* The coin type to request information about
*
* @generated from protobuf field: optional string coin_type = 1;
*/
coinType?: string;
}
/**
* Response message for `NodeService.GetCoinInfo`.
*
* @generated from protobuf message sui.rpc.v2.GetCoinInfoResponse
*/
interface GetCoinInfoResponse {
/**
* Required. The coin type.
*
* @generated from protobuf field: optional string coin_type = 1;
*/
coinType?: string;
/**
* This field will be populated with information about this coin
* type's `0x2::coin::CoinMetadata` if it exists and has not been wrapped.
*
* @generated from protobuf field: optional sui.rpc.v2.CoinMetadata metadata = 2;
*/
metadata?: CoinMetadata;
/**
* This field will be populated with information about this coin
* type's `0x2::coin::TreasuryCap` if it exists and has not been wrapped.
*
* @generated from protobuf field: optional sui.rpc.v2.CoinTreasury treasury = 3;
*/
treasury?: CoinTreasury;
/**
* If this coin type is a regulated coin, this field will be
* populated with information either from its Currency object
* in the CoinRegistry, or from its `0x2::coin::RegulatedCoinMetadata`
* object for coins that have not been migrated to the CoinRegistry
*
* If this coin is not known to be regulated, only the
* coin_regulated_state field will be populated.
*
* @generated from protobuf field: optional sui.rpc.v2.RegulatedCoinMetadata regulated_metadata = 4;
*/
regulatedMetadata?: RegulatedCoinMetadata;
}
/**
* Metadata for a coin type
*
* @generated from protobuf message sui.rpc.v2.CoinMetadata
*/
interface CoinMetadata {
/**
* ObjectId of the `0x2::coin::CoinMetadata` object or
* 0x2::sui::coin_registry::Currency object (when registered with CoinRegistry).
*
* @generated from protobuf field: optional string id = 1;
*/
id?: string;
/**
* Number of decimal places to coin uses.
*
* @generated from protobuf field: optional uint32 decimals = 2;
*/
decimals?: number;
/**
* Name for the token
*
* @generated from protobuf field: optional string name = 3;
*/
name?: string;
/**
* Symbol for the token
*
* @generated from protobuf field: optional string symbol = 4;
*/
symbol?: string;
/**
* Description of the token
*
* @generated from protobuf field: optional string description = 5;
*/
description?: string;
/**
* URL for the token logo
*
* @generated from protobuf field: optional string icon_url = 6;
*/
iconUrl?: string;
/**
* The MetadataCap ID if it has been claimed for this coin type.
* This capability allows updating the coin's metadata fields.
* Only populated when metadata is from CoinRegistry.
*
* @generated from protobuf field: optional string metadata_cap_id = 7;
*/
metadataCapId?: string;
/**
* State of the MetadataCap for this coin type.
*
* @generated from protobuf field: optional sui.rpc.v2.CoinMetadata.MetadataCapState metadata_cap_state = 8;
*/
metadataCapState?: CoinMetadata_MetadataCapState;
}
/**
* Information about the state of the coin's MetadataCap
*
* @generated from protobuf enum sui.rpc.v2.CoinMetadata.MetadataCapState
*/
declare enum CoinMetadata_MetadataCapState {
/**
* Indicates the state of the MetadataCap is unknown.
* Set when the coin has not been migrated to the CoinRegistry.
*
* @generated from protobuf enum value: METADATA_CAP_STATE_UNKNOWN = 0;
*/
METADATA_CAP_STATE_UNKNOWN = 0,
/**
* Indicates the MetadataCap has been claimed.
*
* @generated from protobuf enum value: CLAIMED = 1;
*/
CLAIMED = 1,
/**
* Indicates the MetadataCap has not been claimed.
*
* @generated from protobuf enum value: UNCLAIMED = 2;
*/
UNCLAIMED = 2,
/**
* Indicates the MetadataCap has been deleted.
*
* @generated from protobuf enum value: DELETED = 3;
*/
DELETED = 3
}
/**
* Information about a coin type's `0x2::coin::TreasuryCap` and its total available supply
*
* @generated from protobuf message sui.rpc.v2.CoinTreasury
*/
interface CoinTreasury {
/**
* ObjectId of the `0x2::coin::TreasuryCap` object.
*
* @generated from protobuf field: optional string id = 1;
*/
id?: string;
/**
* Total available supply for this coin type.
*
* @generated from protobuf field: optional uint64 total_supply = 2;
*/
totalSupply?: bigint;
/**
* Supply state indicating if the supply is fixed or can still be minted
*
* @generated from protobuf field: optional sui.rpc.v2.CoinTreasury.SupplyState supply_state = 3;
*/
supplyState?: CoinTreasury_SupplyState;
}
/**
* Supply state of a coin, matching the Move SupplyState enum
*
* @generated from protobuf enum sui.rpc.v2.CoinTreasury.SupplyState
*/
declare enum CoinTreasury_SupplyState {
/**
* Supply is unknown or TreasuryCap still exists (minting still possible)
*
* @generated from protobuf enum value: SUPPLY_STATE_UNKNOWN = 0;
*/
SUPPLY_STATE_UNKNOWN = 0,
/**
* Supply is fixed (TreasuryCap consumed, no more minting possible)
*
* @generated from protobuf enum value: FIXED = 1;
*/
FIXED = 1,
/**
* Supply can only decrease (burning allowed, minting not allowed)
*
* @generated from protobuf enum value: BURN_ONLY = 2;
*/
BURN_ONLY = 2
}
/**
* Information about a regulated coin, which indicates that it makes use of the transfer deny list.
*
* @generated from protobuf message sui.rpc.v2.RegulatedCoinMetadata
*/
interface RegulatedCoinMetadata {
/**
* ObjectId of the `0x2::coin::RegulatedCoinMetadata` object.
* Only present for coins that have not been migrated to CoinRegistry.
*
* @generated from protobuf field: optional string id = 1;
*/
id?: string;
/**
* The ID of the coin's `CoinMetadata` or `CoinData` object.
*
* @generated from protobuf field: optional string coin_metadata_object = 2;
*/
coinMetadataObject?: string;
/**
* The ID of the coin's `DenyCap` object.
*
* @generated from protobuf field: optional string deny_cap_object = 3;
*/
denyCapObject?: string;
/**
* Whether the coin can be globally paused
*
* @generated from protobuf field: optional bool allow_global_pause = 4;
*/
allowGlobalPause?: boolean;
/**
* Variant of the regulated coin metadata
*
* @generated from protobuf field: optional uint32 variant = 5;
*/
variant?: number;
/**
* Indicates the coin's regulated state.
*
* @generated from protobuf field: optional sui.rpc.v2.RegulatedCoinMetadata.CoinRegulatedState coin_regulated_state = 6;
*/
coinRegulatedState?: RegulatedCoinMetadata_CoinRegulatedState;
}
/**
* Indicates the state of the regulation of the coin.
*
* @generated from protobuf enum sui.rpc.v2.RegulatedCoinMetadata.CoinRegulatedState
*/
declare enum RegulatedCoinMetadata_CoinRegulatedState {
/**
* Indicates the regulation state of the coin is unknown.
* This is set when a coin has not been migrated to the
* coin registry and has no `0x2::coin::RegulatedCoinMetadata`
* object.
*
* @generated from protobuf enum value: COIN_REGULATED_STATE_UNKNOWN = 0;
*/
COIN_REGULATED_STATE_UNKNOWN = 0,
/**
* Indicates a coin is regulated. RegulatedCoinMetadata will be populated.
*
* @generated from protobuf enum value: REGULATED = 1;
*/
REGULATED = 1,
/**
* Indicates a coin is unregulated.
*
* @generated from protobuf enum value: UNREGULATED = 2;
*/
UNREGULATED = 2
}
/**
* Request message for `LiveDataService.GetBalance`.
*
* @generated from protobuf message sui.rpc.v2.GetBalanceRequest
*/
interface GetBalanceRequest {
/**
* Required. The owner's Sui address.
*
* @generated from protobuf field: optional string owner = 1;
*/
owner?: string;
/**
* Required. The type names for the coin (e.g., 0x2::sui::SUI).
*
* @generated from protobuf field: optional string coin_type = 2;
*/
coinType?: string;
}
/**
* Response message for `LiveDataService.GetBalance`.
* Return the total coin balance for one coin type, owned by the address owner.
*
* @generated from protobuf message sui.rpc.v2.GetBalanceResponse
*/
interface GetBalanceResponse {
/**
* The balance information for the requested coin type.
*
* @generated from protobuf field: optional sui.rpc.v2.Balance balance = 1;
*/
balance?: Balance;
}
/**
* Request message for `LiveDataService.ListBalances`.
*
* @generated from protobuf message sui.rpc.v2.ListBalancesRequest
*/
interface ListBalancesRequest {
/**
* Required. The owner's Sui address.
*
* @generated from protobuf field: optional string owner = 1;
*/
owner?: string;
/**
* The maximum number of balance entries to return. The service may return fewer than this value.
* If unspecified, at most `50` entries will be returned.
* The maximum value is `1000`; values above `1000` will be coerced to `1000`.
*
* @generated from protobuf field: optional uint32 page_size = 2;
*/
pageSize?: number;
/**
* A page token, received from a previous `ListBalances` call.
* Provide this to retrieve the subsequent page.
*
* When paginating, all other parameters provided to `ListBalances` must
* match the call that provided the page token.
*
* @generated from protobuf field: optional bytes page_token = 3;
*/
pageToken?: Uint8Array;
}
/**
* Response message for `LiveDataService.ListBalances`.
* Return the total coin balance for all coin types, owned by the address owner.
*
* @generated from protobuf message sui.rpc.v2.ListBalancesResponse
*/
interface ListBalancesResponse {
/**
* The list of coin types and their respective balances.
*
* @generated from protobuf field: repeated sui.rpc.v2.Balance balances = 1;
*/
balances: Balance[];
/**
* A token, which can be sent as `page_token` to retrieve the next page.
* If this field is omitted, there are no subsequent pages.
*
* @generated from protobuf field: optional bytes next_page_token = 2;
*/
nextPageToken?: Uint8Array;
}
/**
* Balance information for a specific coin type.
*
* @generated from protobuf message sui.rpc.v2.Balance
*/
interface Balance {
/**
* The type of the coin (e.g., 0x2::sui::SUI).
*
* @generated from protobuf field: optional string coin_type = 1;
*/
coinType?: string;
/**
* The total balance of `coin_type` in its smallest unit.
* This is the sum of all spendable amounts of `coin_type` (`address_balance`
* and `coin_balance`).
*
* @generated from protobuf field: optional uint64 balance = 3;
*/
balance?: bigint;
/**
* The balance of `Balance<T>` in this address's Address Balance.
*
* @generated from protobuf field: optional uint64 address_balance = 4;
*/
addressBalance?: bigint;
/**
* The balance of all `Coin<T>` objects owned by this address.
*
* @generated from protobuf field: optional uint64 coin_balance = 5;
*/
coinBalance?: bigint;
}
/**
* Request message for `NodeService.ListDynamicFields`
*
* @generated from protobuf message sui.rpc.v2.ListDynamicFieldsRequest
*/
interface ListDynamicFieldsRequest {
/**
* Required. The `UID` of the parent, which owns the collections of dynamic fields.
*
* @generated from protobuf field: optional string parent = 1;
*/
parent?: string;
/**
* The maximum number of dynamic fields to return. The service may return fewer than this value.
* If unspecified, at most `50` entries will be returned.
* The maximum value is `1000`; values above `1000` will be coerced to `1000`.
*
* @generated from protobuf field: optional uint32 page_size = 2;
*/
pageSize?: number;
/**
* A page token, received from a previous `ListDynamicFields` call.
* Provide this to retrieve the subsequent page.
*
* When paginating, all other parameters provided to `ListDynamicFields` must
* match the call that provided the page token.
*
* @generated from protobuf field: optional bytes page_token = 3;
*/
pageToken?: Uint8Array;
/**
* Mask specifying which fields to read.
* If no mask is specified, defaults to `parent,field_id`.
*
* @generated from protobuf field: optional google.protobuf.FieldMask read_mask = 4;
*/
readMask?: FieldMask;
}
/**
* Response message for `NodeService.ListDynamicFields`
*
* @generated from protobuf message sui.rpc.v2.ListDynamicFieldsResponse
*/
interface ListDynamicFieldsResponse {
/**
* Page of dynamic fields owned by the specified parent.
*
* @generated from protobuf field: repeated sui.rpc.v2.DynamicField dynamic_fields = 1;
*/
dynamicFields: DynamicField[];
/**
* A token, which can be sent as `page_token` to retrieve the next page.
* If this field is omitted, there are no subsequent pages.
*
* @generated from protobuf field: optional bytes next_page_token = 2;
*/
nextPageToken?: Uint8Array;
}
/**
* @generated from protobuf message sui.rpc.v2.DynamicField
*/
interface DynamicField {
/**
* @generated from protobuf field: optional sui.rpc.v2.DynamicField.DynamicFieldKind kind = 1;
*/
kind?: DynamicField_DynamicFieldKind;
/**
* ObjectId of this dynamic field's parent.
*
* @generated from protobuf field: optional string parent = 2;
*/
parent?: string;
/**
* ObjectId of this dynamic field.
*
* @generated from protobuf field: optional string field_id = 3;
*/
fieldId?: string;
/**
* The field object itself
*
* @generated from protobuf field: optional sui.rpc.v2.Object field_object = 4;
*/
fieldObject?: Object$1;
/**
* The dynamic field's "name"
*
* @generated from protobuf field: optional sui.rpc.v2.Bcs name = 5;
*/
name?: Bcs;
/**
* The dynamic field's "value"
*
* @generated from protobuf field: optional sui.rpc.v2.Bcs value = 6;
*/
value?: Bcs;
/**
* The type of the dynamic field "value".
*
* If this is a dynamic object field then this is the type of the object
* itself (which is a child of this field), otherwise this is the type of the
* value of this field.
*
* @generated from protobuf field: optional string value_type = 7;
*/
valueType?: string;
/**
* The ObjectId of the child object when a child is a dynamic
* object field.
*
* The presence or absence of this field can be used to determine if a child
* is a dynamic field or a dynamic child object
*
* @generated from protobuf field: optional string child_id = 8;
*/
childId?: string;
/**
* The object itself when a child is a dynamic object field.
*
* @generated from protobuf field: optional sui.rpc.v2.Object child_object = 9;
*/
childObject?: Object$1;
}
/**
* @generated from protobuf enum sui.rpc.v2.DynamicField.DynamicFieldKind
*/
declare enum DynamicField_DynamicFieldKind {
/**
* @generated from protobuf enum value: DYNAMIC_FIELD_KIND_UNKNOWN = 0;
*/
DYNAMIC_FIELD_KIND_UNKNOWN = 0,
/**
* @generated from protobuf enum value: FIELD = 1;
*/
FIELD = 1,
/**
* @generated from protobuf enum value: OBJECT = 2;
*/
OBJECT = 2
}
/**
* @generated from protobuf message sui.rpc.v2.ListOwnedObjectsRequest
*/
interface ListOwnedObjectsRequest {
/**
* Required. The address of the account that owns the objects.
*
* @generated from protobuf field: optional string owner = 1;
*/
owner?: string;
/**
* The maximum number of entries return. The service may return fewer than this value.
* If unspecified, at most `50` entries will be returned.
* The maximum value is `1000`; values above `1000` will be coerced to `1000`.
*
* @generated from protobuf field: optional uint32 page_size = 2;
*/
pageSize?: number;
/**
* A page token, received from a previous `ListOwnedObjects` call.
* Provide this to retrieve the subsequent page.
*
* When paginating, all other parameters provided to `ListOwnedObjects` must
* match the call that provided the page token.
*
* @generated from protobuf field: optional bytes page_token = 3;
*/
pageToken?: Uint8Array;
/**
* Mask specifying which fields to read.
* If no mask is specified, defaults to `object_id,version,object_type`.
*
* @generated from protobuf field: optional google.protobuf.FieldMask read_mask = 4;
*/
readMask?: FieldMask;
/**
* Optional type filter to limit the types of objects listed.
*
* Providing an object type with no type params will return objects of that
* type with any type parameter, e.g. `0x2::coin::Coin` will return all
* `Coin<T>` objects regardless of the type parameter `T`. Providing a type
* with a type param will restrict the returned objects to only those objects
* that match the provided type parameters, e.g.
* `0x2::coin::Coin<0x2::sui::SUI>` will only return `Coin<SUI>` objects.
*
* @generated from protobuf field: optional string object_type = 5;
*/
objectType?: string;
}
/**
* @generated from protobuf message sui.rpc.v2.ListOwnedObjectsResponse
*/
interface ListOwnedObjectsResponse {
/**
* Page of dynamic fields owned by the specified parent.
*
* @generated from protobuf field: repeated sui.rpc.v2.Object objects = 1;
*/
objects: Object$1[];
/**
* A token, which can be sent as `page_token` to retrieve the next page.
* If this field is omitted, there are no subsequent pages.
*
* @generated from protobuf field: optional bytes next_page_token = 2;
*/
nextPageToken?: Uint8Array;
}
declare class GetCoinInfoRequest$Type extends MessageType<GetCoinInfoRequest> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.GetCoinInfoRequest
*/
declare const GetCoinInfoRequest: GetCoinInfoRequest$Type;
declare class GetCoinInfoResponse$Type extends MessageType<GetCoinInfoResponse> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.GetCoinInfoResponse
*/
declare const GetCoinInfoResponse: GetCoinInfoResponse$Type;
declare class CoinMetadata$Type extends MessageType<CoinMetadata> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.CoinMetadata
*/
declare const CoinMetadata: CoinMetadata$Type;
declare class CoinTreasury$Type extends MessageType<CoinTreasury> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.CoinTreasury
*/
declare const CoinTreasury: CoinTreasury$Type;
declare class RegulatedCoinMetadata$Type extends MessageType<RegulatedCoinMetadata> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.RegulatedCoinMetadata
*/
declare const RegulatedCoinMetadata: RegulatedCoinMetadata$Type;
declare class GetBalanceRequest$Type extends MessageType<GetBalanceRequest> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.GetBalanceRequest
*/
declare const GetBalanceRequest: GetBalanceRequest$Type;
declare class GetBalanceResponse$Type extends MessageType<GetBalanceResponse> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.GetBalanceResponse
*/
declare const GetBalanceResponse: GetBalanceResponse$Type;
declare class ListBalancesRequest$Type extends MessageType<ListBalancesRequest> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.ListBalancesRequest
*/
declare const ListBalancesRequest: ListBalancesRequest$Type;
declare class ListBalancesResponse$Type extends MessageType<ListBalancesResponse> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.ListBalancesResponse
*/
declare const ListBalancesResponse: ListBalancesResponse$Type;
declare class Balance$Type extends MessageType<Balance> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.Balance
*/
declare const Balance: Balance$Type;
declare class ListDynamicFieldsRequest$Type extends MessageType<ListDynamicFieldsRequest> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.ListDynamicFieldsRequest
*/
declare const ListDynamicFieldsRequest: ListDynamicFieldsRequest$Type;
declare class ListDynamicFieldsResponse$Type extends MessageType<ListDynamicFieldsResponse> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.ListDynamicFieldsResponse
*/
declare const ListDynamicFieldsResponse: ListDynamicFieldsResponse$Type;
declare class DynamicField$Type extends MessageType<DynamicField> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.DynamicField
*/
declare const DynamicField: DynamicField$Type;
declare class ListOwnedObjectsRequest$Type extends MessageType<ListOwnedObjectsRequest> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.ListOwnedObjectsRequest
*/
declare const ListOwnedObjectsRequest: ListOwnedObjectsRequest$Type;
declare class ListOwnedObjectsResponse$Type extends MessageType<ListOwnedObjectsResponse> {
constructor();
}
/**
* @generated MessageType for protobuf message sui.rpc.v2.ListOwnedObjectsResponse
*/
declare const ListOwnedObjectsResponse: ListOwnedObjectsResponse$Type;
/**
* @generated ServiceType for protobuf service sui.rpc.v2.StateService
*/
declare const StateService: ServiceType;
//#endregion
export { Balance, CoinMetadata, CoinMetadata_MetadataCapState, CoinTreasury, CoinTreasury_SupplyState, DynamicField, DynamicField_DynamicFieldKind, GetBalanceRequest, GetBalanceResponse, GetCoinInfoRequest, GetCoinInfoResponse, ListBalancesRequest, ListBalancesResponse, ListDynamicFieldsRequest, ListDynamicFieldsResponse, ListOwnedObjectsRequest, ListOwnedObjectsResponse, RegulatedCoinMetadata, RegulatedCoinMetadata_CoinRegulatedState, StateService };
//# sourceMappingURL=state_service.d.mts.map