import { Vec2 } from "./Math" ; import { CaptureMode , CaptureTriggerMode , GenTokenSettings } from "./Mint" ; export interface TokenMetadata { "" : string ; name : string ; symbol : string ; decimals : number ; } export interface HistoryMetadata { [ key ] : any ; } export interface TokenFormat { uri : string ; mimeType : string ; } export interface CaptureSettings { mode : CaptureMode ; triggerMode : CaptureTriggerMode ; resolution ? : Vec2 ; delay ? : number ; canvasSelector ? : string ; } export type RawTokenFeatures = Record < string , any > ; export type TokenFeatureValueType = string | number | boolean ; export interface TokenMetadataFeature { name : string ; value : TokenFeatureValueType ; } export interface TokenFeature { name : string ; value : TokenFeatureValueType ; rarity ? : number ; } export enum ProcessRawTokenFeatureErrorType { UNKNOWN = "UNKNOWN" , INVALID_PROPERTY_TYPE = "INVALID_PROPERTY_TYPE" , INVALID_FEATURES_SIGNATURE = "INVALID_FEATURES_SIGNATURE" } export const ProcessRawTokenFeatureErrorTypes = Object . values ( ProcessRawTokenFeatureErrorType ) ; export type ProcessRawTokenFeatureError = { type : ProcessRawTokenFeatureErrorType ; extra ? : string ; } ; export interface GenerativeTokenMetadata { name : string ; description : string ; childrenDescription : string ; tags : string [ ] ; artifactUri : string ; displayUri : string ; thumbnailUri : string ; generativeUri : string ; authenticityHash : string ; capture : CaptureSettings ; settings ? : GenTokenSettings | null ; decimals : number ; symbol : string ; previewHash ? : string ; version ? : string ; } export interface ObjktMetadata extends GenerativeTokenMetadata { features ? : TokenMetadataFeature [ ] | null ; }