carbon-mpl-token-metadata-decoder 0.3.0

MPL Token Metadata Decoder
Documentation

use super::*;
use carbon_core::{borsh, CarbonDeserialize};


#[derive(CarbonDeserialize, Debug, serde::Serialize, serde::Deserialize, PartialEq, Eq, Clone, Hash)]
pub enum UpdateArgs {
    V1
                {
                    new_update_authority: Option<solana_sdk::pubkey::Pubkey>,
                    data: Option<Data>,
                    primary_sale_happened: Option<bool>,
                    is_mutable: Option<bool>,
                    collection: CollectionToggle,
                    collection_details: CollectionDetailsToggle,
                    uses: UsesToggle,
                    rule_set: RuleSetToggle,
                    authorization_data: Option<AuthorizationData>,
                }
    ,
    AsUpdateAuthorityV2
                {
                    new_update_authority: Option<solana_sdk::pubkey::Pubkey>,
                    data: Option<Data>,
                    primary_sale_happened: Option<bool>,
                    is_mutable: Option<bool>,
                    collection: CollectionToggle,
                    collection_details: CollectionDetailsToggle,
                    uses: UsesToggle,
                    rule_set: RuleSetToggle,
                    token_standard: Option<TokenStandard>,
                    authorization_data: Option<AuthorizationData>,
                }
    ,
    AsAuthorityItemDelegateV2
                {
                    new_update_authority: Option<solana_sdk::pubkey::Pubkey>,
                    primary_sale_happened: Option<bool>,
                    is_mutable: Option<bool>,
                    token_standard: Option<TokenStandard>,
                    authorization_data: Option<AuthorizationData>,
                }
    ,
    AsCollectionDelegateV2
                {
                    collection: CollectionToggle,
                    authorization_data: Option<AuthorizationData>,
                }
    ,
    AsDataDelegateV2
                {
                    data: Option<Data>,
                    authorization_data: Option<AuthorizationData>,
                }
    ,
    AsProgrammableConfigDelegateV2
                {
                    rule_set: RuleSetToggle,
                    authorization_data: Option<AuthorizationData>,
                }
    ,
    AsDataItemDelegateV2
                {
                    data: Option<Data>,
                    authorization_data: Option<AuthorizationData>,
                }
    ,
    AsCollectionItemDelegateV2
                {
                    collection: CollectionToggle,
                    authorization_data: Option<AuthorizationData>,
                }
    ,
    AsProgrammableConfigItemDelegateV2
                {
                    rule_set: RuleSetToggle,
                    authorization_data: Option<AuthorizationData>,
                }
    ,
}