blockfrost-api 0.12.2.0 → 0.13.0.0
raw patch · 13 files changed
+1777/−2 lines, 13 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
- Blockfrost.Auth: [$sel:apiKeySettingsQueryProject:APIKeyInHeaderSettings] :: APIKeyInHeaderSettings -> Text -> IO (Maybe Project)
- Blockfrost.Auth: [$sel:projectEnv:Project] :: Project -> Env
- Blockfrost.Auth: [$sel:projectId:Project] :: Project -> Text
- Blockfrost.Types: [$sel:apiError:ApiError] :: ApiError -> Text
- Blockfrost.Types: [$sel:apiErrorCode:ApiError] :: ApiError -> Int
- Blockfrost.Types: [$sel:apiErrorMessage:ApiError] :: ApiError -> Text
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountDelegationActiveEpoch:AccountDelegation] :: AccountDelegation -> Epoch
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountDelegationAmount:AccountDelegation] :: AccountDelegation -> Lovelaces
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountDelegationPoolId:AccountDelegation] :: AccountDelegation -> PoolId
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountDelegationTxHash:AccountDelegation] :: AccountDelegation -> TxHash
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountHistoryActiveEpoch:AccountHistory] :: AccountHistory -> Integer
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountHistoryAmount:AccountHistory] :: AccountHistory -> Lovelaces
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountHistoryPoolId:AccountHistory] :: AccountHistory -> PoolId
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountInfoActive:AccountInfo] :: AccountInfo -> Bool
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountInfoActiveEpoch:AccountInfo] :: AccountInfo -> Maybe Integer
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountInfoControlledAmount:AccountInfo] :: AccountInfo -> Lovelaces
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountInfoPoolId:AccountInfo] :: AccountInfo -> Maybe PoolId
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountInfoReservesSum:AccountInfo] :: AccountInfo -> Lovelaces
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountInfoRewardsSum:AccountInfo] :: AccountInfo -> Lovelaces
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountInfoStakeAddress:AccountInfo] :: AccountInfo -> Address
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountInfoTreasurySum:AccountInfo] :: AccountInfo -> Lovelaces
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountInfoWithdrawableAmount:AccountInfo] :: AccountInfo -> Lovelaces
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountInfoWithdrawalsSum:AccountInfo] :: AccountInfo -> Lovelaces
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountMirAmount:AccountMir] :: AccountMir -> Lovelaces
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountMirTxHash:AccountMir] :: AccountMir -> TxHash
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountRegistrationAction:AccountRegistration] :: AccountRegistration -> AccountRegistrationAction
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountRegistrationTxHash:AccountRegistration] :: AccountRegistration -> TxHash
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountRewardAmount:AccountReward] :: AccountReward -> Lovelaces
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountRewardEpoch:AccountReward] :: AccountReward -> Epoch
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountRewardPoolId:AccountReward] :: AccountReward -> PoolId
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountRewardType:AccountReward] :: AccountReward -> RewardType
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountWithdrawalAmount:AccountWithdrawal] :: AccountWithdrawal -> Lovelaces
- Blockfrost.Types.Cardano.Accounts: [$sel:_accountWithdrawalTxHash:AccountWithdrawal] :: AccountWithdrawal -> TxHash
- Blockfrost.Types.Cardano.Accounts: [$sel:_addressAssociatedAddress:AddressAssociated] :: AddressAssociated -> Address
- Blockfrost.Types.Cardano.Accounts: [$sel:_addressAssociatedTotalReceivedSum:AddressAssociatedTotal] :: AddressAssociatedTotal -> [Amount]
- Blockfrost.Types.Cardano.Accounts: [$sel:_addressAssociatedTotalSentSum:AddressAssociatedTotal] :: AddressAssociatedTotal -> [Amount]
- Blockfrost.Types.Cardano.Accounts: [$sel:_addressAssociatedTotalStakeAddress:AddressAssociatedTotal] :: AddressAssociatedTotal -> Address
- Blockfrost.Types.Cardano.Accounts: [$sel:_addressAssociatedTotalTxCount:AddressAssociatedTotal] :: AddressAssociatedTotal -> Integer
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressDetailsAddress:AddressDetails] :: AddressDetails -> Address
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressDetailsReceivedSum:AddressDetails] :: AddressDetails -> [Amount]
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressDetailsSentSum:AddressDetails] :: AddressDetails -> [Amount]
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressDetailsTxCount:AddressDetails] :: AddressDetails -> Integer
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressInfoAddress:AddressInfo] :: AddressInfo -> Address
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressInfoAmount:AddressInfo] :: AddressInfo -> [Amount]
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressInfoExtendedAddress:AddressInfoExtended] :: AddressInfoExtended -> Address
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressInfoExtendedAmount:AddressInfoExtended] :: AddressInfoExtended -> [AmountExtended]
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressInfoExtendedScript:AddressInfoExtended] :: AddressInfoExtended -> Bool
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressInfoExtendedStakeAddress:AddressInfoExtended] :: AddressInfoExtended -> Maybe Address
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressInfoExtendedType:AddressInfoExtended] :: AddressInfoExtended -> AddressType
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressInfoScript:AddressInfo] :: AddressInfo -> Bool
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressInfoStakeAddress:AddressInfo] :: AddressInfo -> Maybe Address
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressInfoType:AddressInfo] :: AddressInfo -> AddressType
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressTransactionBlockHeight:AddressTransaction] :: AddressTransaction -> Integer
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressTransactionBlockTime:AddressTransaction] :: AddressTransaction -> POSIXTime
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressTransactionTxHash:AddressTransaction] :: AddressTransaction -> TxHash
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressTransactionTxIndex:AddressTransaction] :: AddressTransaction -> Integer
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressUtxoAddress:AddressUtxo] :: AddressUtxo -> Address
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressUtxoAmount:AddressUtxo] :: AddressUtxo -> [Amount]
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressUtxoBlock:AddressUtxo] :: AddressUtxo -> BlockHash
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressUtxoDataHash:AddressUtxo] :: AddressUtxo -> Maybe DatumHash
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressUtxoInlineDatum:AddressUtxo] :: AddressUtxo -> Maybe InlineDatum
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressUtxoOutputIndex:AddressUtxo] :: AddressUtxo -> Integer
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressUtxoReferenceScriptHash:AddressUtxo] :: AddressUtxo -> Maybe ScriptHash
- Blockfrost.Types.Cardano.Addresses: [$sel:_addressUtxoTxHash:AddressUtxo] :: AddressUtxo -> TxHash
- Blockfrost.Types.Cardano.Assets: [$sel:_assetAddressAddress:AssetAddress] :: AssetAddress -> Address
- Blockfrost.Types.Cardano.Assets: [$sel:_assetAddressQuantity:AssetAddress] :: AssetAddress -> Quantity
- Blockfrost.Types.Cardano.Assets: [$sel:_assetDetailsAsset:AssetDetails] :: AssetDetails -> Text
- Blockfrost.Types.Cardano.Assets: [$sel:_assetDetailsAssetName:AssetDetails] :: AssetDetails -> Maybe Text
- Blockfrost.Types.Cardano.Assets: [$sel:_assetDetailsFingerprint:AssetDetails] :: AssetDetails -> Text
- Blockfrost.Types.Cardano.Assets: [$sel:_assetDetailsInitialMintTxHash:AssetDetails] :: AssetDetails -> TxHash
- Blockfrost.Types.Cardano.Assets: [$sel:_assetDetailsMetadata:AssetDetails] :: AssetDetails -> Maybe AssetMetadata
- Blockfrost.Types.Cardano.Assets: [$sel:_assetDetailsMintOrBurnCount:AssetDetails] :: AssetDetails -> Integer
- Blockfrost.Types.Cardano.Assets: [$sel:_assetDetailsOnchainMetadataExtra:AssetDetails] :: AssetDetails -> Maybe Text
- Blockfrost.Types.Cardano.Assets: [$sel:_assetDetailsOnchainMetadataValue:AssetDetails] :: AssetDetails -> Maybe Value
- Blockfrost.Types.Cardano.Assets: [$sel:_assetDetailsOnchainStandardMetadata:AssetDetails] :: AssetDetails -> Maybe AssetOnChainMetadata
- Blockfrost.Types.Cardano.Assets: [$sel:_assetDetailsPolicyId:AssetDetails] :: AssetDetails -> PolicyId
- Blockfrost.Types.Cardano.Assets: [$sel:_assetDetailsQuantity:AssetDetails] :: AssetDetails -> Quantity
- Blockfrost.Types.Cardano.Assets: [$sel:_assetHistoryAction:AssetHistory] :: AssetHistory -> AssetAction
- Blockfrost.Types.Cardano.Assets: [$sel:_assetHistoryAmount:AssetHistory] :: AssetHistory -> Quantity
- Blockfrost.Types.Cardano.Assets: [$sel:_assetHistoryTxHash:AssetHistory] :: AssetHistory -> TxHash
- Blockfrost.Types.Cardano.Assets: [$sel:_assetInfoAsset:AssetInfo] :: AssetInfo -> Text
- Blockfrost.Types.Cardano.Assets: [$sel:_assetInfoQuantity:AssetInfo] :: AssetInfo -> Quantity
- Blockfrost.Types.Cardano.Assets: [$sel:_assetMetadataDecimals:AssetMetadata] :: AssetMetadata -> Maybe Int
- Blockfrost.Types.Cardano.Assets: [$sel:_assetMetadataDescription:AssetMetadata] :: AssetMetadata -> Text
- Blockfrost.Types.Cardano.Assets: [$sel:_assetMetadataLogo:AssetMetadata] :: AssetMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Assets: [$sel:_assetMetadataName:AssetMetadata] :: AssetMetadata -> Text
- Blockfrost.Types.Cardano.Assets: [$sel:_assetMetadataTicker:AssetMetadata] :: AssetMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Assets: [$sel:_assetMetadataUrl:AssetMetadata] :: AssetMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Assets: [$sel:_assetOnChainMetadataDescription:AssetOnChainMetadata] :: AssetOnChainMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Assets: [$sel:_assetOnChainMetadataFiles:AssetOnChainMetadata] :: AssetOnChainMetadata -> Maybe [MetadataMediaFile]
- Blockfrost.Types.Cardano.Assets: [$sel:_assetOnChainMetadataImage:AssetOnChainMetadata] :: AssetOnChainMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Assets: [$sel:_assetOnChainMetadataMediaType:AssetOnChainMetadata] :: AssetOnChainMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Assets: [$sel:_assetOnChainMetadataName:AssetOnChainMetadata] :: AssetOnChainMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Assets: [$sel:_assetTransactionBlockHeight:AssetTransaction] :: AssetTransaction -> Integer
- Blockfrost.Types.Cardano.Assets: [$sel:_assetTransactionBlockTime:AssetTransaction] :: AssetTransaction -> POSIXTime
- Blockfrost.Types.Cardano.Assets: [$sel:_assetTransactionTxHash:AssetTransaction] :: AssetTransaction -> TxHash
- Blockfrost.Types.Cardano.Assets: [$sel:_assetTransactionTxIndex:AssetTransaction] :: AssetTransaction -> Integer
- Blockfrost.Types.Cardano.Assets: [$sel:_metadataMediaFileMediaType:MetadataMediaFile] :: MetadataMediaFile -> Maybe Text
- Blockfrost.Types.Cardano.Assets: [$sel:_metadataMediaFileName:MetadataMediaFile] :: MetadataMediaFile -> Maybe Text
- Blockfrost.Types.Cardano.Assets: [$sel:_metadataMediaFileSrc:MetadataMediaFile] :: MetadataMediaFile -> Maybe Text
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockBlockVrf:Block] :: Block -> Maybe Text
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockConfirmations:Block] :: Block -> Integer
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockEpoch:Block] :: Block -> Maybe Epoch
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockEpochSlot:Block] :: Block -> Maybe Integer
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockFees:Block] :: Block -> Maybe Lovelaces
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockHash:Block] :: Block -> BlockHash
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockHeight:Block] :: Block -> Maybe Integer
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockNextBlock:Block] :: Block -> Maybe BlockHash
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockOpCert:Block] :: Block -> Maybe Text
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockOpCertCounter:Block] :: Block -> Maybe Quantity
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockOutput:Block] :: Block -> Maybe Lovelaces
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockPreviousBlock:Block] :: Block -> Maybe BlockHash
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockSize:Block] :: Block -> Integer
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockSlot:Block] :: Block -> Maybe Slot
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockSlotLeader:Block] :: Block -> Text
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockTime:Block] :: Block -> POSIXTime
- Blockfrost.Types.Cardano.Blocks: [$sel:_blockTxCount:Block] :: Block -> Integer
- Blockfrost.Types.Cardano.Blocks: [$sel:getTxHashCBOR:TxHashCBOR] :: TxHashCBOR -> (TxHash, TransactionCBOR)
- Blockfrost.Types.Cardano.Epochs: [$sel:_epochInfoActiveStake:EpochInfo] :: EpochInfo -> Maybe Lovelaces
- Blockfrost.Types.Cardano.Epochs: [$sel:_epochInfoBlockCount:EpochInfo] :: EpochInfo -> Integer
- Blockfrost.Types.Cardano.Epochs: [$sel:_epochInfoEndTime:EpochInfo] :: EpochInfo -> POSIXTime
- Blockfrost.Types.Cardano.Epochs: [$sel:_epochInfoEpoch:EpochInfo] :: EpochInfo -> Epoch
- Blockfrost.Types.Cardano.Epochs: [$sel:_epochInfoFees:EpochInfo] :: EpochInfo -> Lovelaces
- Blockfrost.Types.Cardano.Epochs: [$sel:_epochInfoFirstBlockTime:EpochInfo] :: EpochInfo -> POSIXTime
- Blockfrost.Types.Cardano.Epochs: [$sel:_epochInfoLastBlockTime:EpochInfo] :: EpochInfo -> POSIXTime
- Blockfrost.Types.Cardano.Epochs: [$sel:_epochInfoOutput:EpochInfo] :: EpochInfo -> Lovelaces
- Blockfrost.Types.Cardano.Epochs: [$sel:_epochInfoStartTime:EpochInfo] :: EpochInfo -> POSIXTime
- Blockfrost.Types.Cardano.Epochs: [$sel:_epochInfoTxCount:EpochInfo] :: EpochInfo -> Integer
- Blockfrost.Types.Cardano.Epochs: [$sel:_poolStakeDistributionAmount:PoolStakeDistribution] :: PoolStakeDistribution -> Lovelaces
- Blockfrost.Types.Cardano.Epochs: [$sel:_poolStakeDistributionStakeAddress:PoolStakeDistribution] :: PoolStakeDistribution -> Address
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsA0:ProtocolParams] :: ProtocolParams -> Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsCoinsPerUtxoSize:ProtocolParams] :: ProtocolParams -> Lovelaces
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsCoinsPerUtxoWord:ProtocolParams] :: ProtocolParams -> Lovelaces
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsCollateralPercent:ProtocolParams] :: ProtocolParams -> Integer
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsCommitteeMaxTermLength:ProtocolParams] :: ProtocolParams -> Maybe Quantity
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsCommitteeMinSize:ProtocolParams] :: ProtocolParams -> Maybe Quantity
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsCostModels:ProtocolParams] :: ProtocolParams -> CostModels
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsCostModelsRaw:ProtocolParams] :: ProtocolParams -> CostModelsRaw
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsDecentralisationParam:ProtocolParams] :: ProtocolParams -> Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsDrepActivity:ProtocolParams] :: ProtocolParams -> Maybe Quantity
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsDrepDeposit:ProtocolParams] :: ProtocolParams -> Maybe Lovelaces
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsDvtCommitteeNoConfidence:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsDvtCommitteeNormal:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsDvtHardForkInitiation:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsDvtMotionNoConfidence:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsDvtPPEconomicGroup:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsDvtPPGovGroup:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsDvtPPNetworkGroup:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsDvtPPTechnicalGroup:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsDvtTreasuryWithdrawal:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsDvtUpdateToConstitution:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsEMax:ProtocolParams] :: ProtocolParams -> Integer
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsEpoch:ProtocolParams] :: ProtocolParams -> Epoch
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsExtraEntropy:ProtocolParams] :: ProtocolParams -> Maybe Text
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsGovActionDeposit:ProtocolParams] :: ProtocolParams -> Maybe Lovelaces
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsGovActionLifetime:ProtocolParams] :: ProtocolParams -> Maybe Quantity
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsKeyDeposit:ProtocolParams] :: ProtocolParams -> Lovelaces
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsMaxBlockExMem:ProtocolParams] :: ProtocolParams -> Quantity
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsMaxBlockExSteps:ProtocolParams] :: ProtocolParams -> Quantity
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsMaxBlockHeaderSize:ProtocolParams] :: ProtocolParams -> Integer
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsMaxBlockSize:ProtocolParams] :: ProtocolParams -> Integer
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsMaxCollateralInputs:ProtocolParams] :: ProtocolParams -> Integer
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsMaxTxExMem:ProtocolParams] :: ProtocolParams -> Quantity
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsMaxTxExSteps:ProtocolParams] :: ProtocolParams -> Quantity
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsMaxTxSize:ProtocolParams] :: ProtocolParams -> Integer
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsMaxValSize:ProtocolParams] :: ProtocolParams -> Quantity
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsMinFeeA:ProtocolParams] :: ProtocolParams -> Integer
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsMinFeeB:ProtocolParams] :: ProtocolParams -> Integer
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsMinFeeRefScriptCostPerByte:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsMinPoolCost:ProtocolParams] :: ProtocolParams -> Lovelaces
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsMinUtxo:ProtocolParams] :: ProtocolParams -> Lovelaces
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsNOpt:ProtocolParams] :: ProtocolParams -> Integer
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsNonce:ProtocolParams] :: ProtocolParams -> Text
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsPoolDeposit:ProtocolParams] :: ProtocolParams -> Lovelaces
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsPriceMem:ProtocolParams] :: ProtocolParams -> Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsPriceStep:ProtocolParams] :: ProtocolParams -> Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsProtocolMajorVer:ProtocolParams] :: ProtocolParams -> Integer
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsProtocolMinorVer:ProtocolParams] :: ProtocolParams -> Integer
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsPvtCommitteeNoConfidence:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsPvtCommitteeNormal:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsPvtHardForkInitiation:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsPvtMotionNoConfidence:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsPvtppSecurityGroup:ProtocolParams] :: ProtocolParams -> Maybe Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsRho:ProtocolParams] :: ProtocolParams -> Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_protocolParamsTau:ProtocolParams] :: ProtocolParams -> Rational
- Blockfrost.Types.Cardano.Epochs: [$sel:_stakeDistributionAmount:StakeDistribution] :: StakeDistribution -> Lovelaces
- Blockfrost.Types.Cardano.Epochs: [$sel:_stakeDistributionPoolId:StakeDistribution] :: StakeDistribution -> PoolId
- Blockfrost.Types.Cardano.Epochs: [$sel:_stakeDistributionStakeAddress:StakeDistribution] :: StakeDistribution -> Address
- Blockfrost.Types.Cardano.Epochs: [$sel:unCostModels:CostModels] :: CostModels -> Map ScriptType (Map Text Integer)
- Blockfrost.Types.Cardano.Epochs: [$sel:unCostModelsRaw:CostModelsRaw] :: CostModelsRaw -> Map ScriptType [Integer]
- Blockfrost.Types.Cardano.Genesis: [$sel:_genesisActiveSlotsCoefficient:Genesis] :: Genesis -> Rational
- Blockfrost.Types.Cardano.Genesis: [$sel:_genesisEpochLength:Genesis] :: Genesis -> Integer
- Blockfrost.Types.Cardano.Genesis: [$sel:_genesisMaxKesEvolutions:Genesis] :: Genesis -> Integer
- Blockfrost.Types.Cardano.Genesis: [$sel:_genesisMaxLovelaceSupply:Genesis] :: Genesis -> Lovelaces
- Blockfrost.Types.Cardano.Genesis: [$sel:_genesisNetworkMagic:Genesis] :: Genesis -> Integer
- Blockfrost.Types.Cardano.Genesis: [$sel:_genesisSecurityParam:Genesis] :: Genesis -> Integer
- Blockfrost.Types.Cardano.Genesis: [$sel:_genesisSlotLength:Genesis] :: Genesis -> Integer
- Blockfrost.Types.Cardano.Genesis: [$sel:_genesisSlotsPerKesPeriod:Genesis] :: Genesis -> Integer
- Blockfrost.Types.Cardano.Genesis: [$sel:_genesisSystemStart:Genesis] :: Genesis -> POSIXTime
- Blockfrost.Types.Cardano.Genesis: [$sel:_genesisUpdateQuorum:Genesis] :: Genesis -> Integer
- Blockfrost.Types.Cardano.Mempool: [$sel:_address:MempoolUTxOInput] :: MempoolUTxOInput -> Text
- Blockfrost.Types.Cardano.Mempool: [$sel:_collateral:MempoolUTxOInput] :: MempoolUTxOInput -> Bool
- Blockfrost.Types.Cardano.Mempool: [$sel:_inputs:MempoolTransaction] :: MempoolTransaction -> [MempoolUTxOInput]
- Blockfrost.Types.Cardano.Mempool: [$sel:_outputIndex:MempoolUTxOInput] :: MempoolUTxOInput -> Integer
- Blockfrost.Types.Cardano.Mempool: [$sel:_outputs:MempoolTransaction] :: MempoolTransaction -> [UtxoOutput]
- Blockfrost.Types.Cardano.Mempool: [$sel:_purpose:MempoolRedeemer] :: MempoolRedeemer -> Text
- Blockfrost.Types.Cardano.Mempool: [$sel:_redeemers:MempoolTransaction] :: MempoolTransaction -> Maybe [MempoolRedeemer]
- Blockfrost.Types.Cardano.Mempool: [$sel:_reference:MempoolUTxOInput] :: MempoolUTxOInput -> Bool
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionAssetMintOrBurnCount:TransactionInMempool] :: TransactionInMempool -> Integer
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionDelegationCount:TransactionInMempool] :: TransactionInMempool -> Integer
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionDeposit:TransactionInMempool] :: TransactionInMempool -> Lovelaces
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionFees:TransactionInMempool] :: TransactionInMempool -> Lovelaces
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionHash:TransactionInMempool] :: TransactionInMempool -> Text
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionInvalidBefore:TransactionInMempool] :: TransactionInMempool -> Maybe Text
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionInvalidHereafter:TransactionInMempool] :: TransactionInMempool -> Maybe Text
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionMirCertCount:TransactionInMempool] :: TransactionInMempool -> Integer
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionOutputAmount:TransactionInMempool] :: TransactionInMempool -> [Amount]
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionPoolRetireCount:TransactionInMempool] :: TransactionInMempool -> Integer
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionPoolUpdateCount:TransactionInMempool] :: TransactionInMempool -> Integer
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionRedeemerCount:TransactionInMempool] :: TransactionInMempool -> Integer
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionSize:TransactionInMempool] :: TransactionInMempool -> Integer
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionStakeCertCount:TransactionInMempool] :: TransactionInMempool -> Integer
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionUtxoCount:TransactionInMempool] :: TransactionInMempool -> Integer
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionValidContract:TransactionInMempool] :: TransactionInMempool -> Bool
- Blockfrost.Types.Cardano.Mempool: [$sel:_transactionWithdrawalCount:TransactionInMempool] :: TransactionInMempool -> Integer
- Blockfrost.Types.Cardano.Mempool: [$sel:_tx:MempoolTransaction] :: MempoolTransaction -> TransactionInMempool
- Blockfrost.Types.Cardano.Mempool: [$sel:_txHash:MempoolUTxOInput] :: MempoolUTxOInput -> Text
- Blockfrost.Types.Cardano.Mempool: [$sel:_tx_index:MempoolRedeemer] :: MempoolRedeemer -> Integer
- Blockfrost.Types.Cardano.Mempool: [$sel:_unit_mem:MempoolRedeemer] :: MempoolRedeemer -> Text
- Blockfrost.Types.Cardano.Mempool: [$sel:_unit_steps:MempoolRedeemer] :: MempoolRedeemer -> Text
- Blockfrost.Types.Cardano.Metadata: [$sel:_txMetaCBORMetadata:TxMetaCBOR] :: TxMetaCBOR -> Maybe Text
- Blockfrost.Types.Cardano.Metadata: [$sel:_txMetaCBORTxHash:TxMetaCBOR] :: TxMetaCBOR -> TxHash
- Blockfrost.Types.Cardano.Metadata: [$sel:_txMetaCip10:TxMeta] :: TxMeta -> Maybe Text
- Blockfrost.Types.Cardano.Metadata: [$sel:_txMetaCount:TxMeta] :: TxMeta -> Quantity
- Blockfrost.Types.Cardano.Metadata: [$sel:_txMetaJSONJSONMetadata:TxMetaJSON] :: TxMetaJSON -> Maybe Value
- Blockfrost.Types.Cardano.Metadata: [$sel:_txMetaJSONTxHash:TxMetaJSON] :: TxMetaJSON -> TxHash
- Blockfrost.Types.Cardano.Metadata: [$sel:_txMetaLabel:TxMeta] :: TxMeta -> Text
- Blockfrost.Types.Cardano.Network: [$sel:_boundEpoch:NetworkEraBound] :: NetworkEraBound -> Epoch
- Blockfrost.Types.Cardano.Network: [$sel:_boundSlot:NetworkEraBound] :: NetworkEraBound -> Slot
- Blockfrost.Types.Cardano.Network: [$sel:_boundTime:NetworkEraBound] :: NetworkEraBound -> NominalDiffTime
- Blockfrost.Types.Cardano.Network: [$sel:_networkEraEnd:NetworkEraSummary] :: NetworkEraSummary -> NetworkEraBound
- Blockfrost.Types.Cardano.Network: [$sel:_networkEraParameters:NetworkEraSummary] :: NetworkEraSummary -> NetworkEraParameters
- Blockfrost.Types.Cardano.Network: [$sel:_networkEraStart:NetworkEraSummary] :: NetworkEraSummary -> NetworkEraBound
- Blockfrost.Types.Cardano.Network: [$sel:_networkStake:Network] :: Network -> NetworkStake
- Blockfrost.Types.Cardano.Network: [$sel:_networkSupply:Network] :: Network -> NetworkSupply
- Blockfrost.Types.Cardano.Network: [$sel:_parametersEpochLength:NetworkEraParameters] :: NetworkEraParameters -> EpochLength
- Blockfrost.Types.Cardano.Network: [$sel:_parametersSafeZone:NetworkEraParameters] :: NetworkEraParameters -> Word64
- Blockfrost.Types.Cardano.Network: [$sel:_parametersSlotLength:NetworkEraParameters] :: NetworkEraParameters -> NominalDiffTime
- Blockfrost.Types.Cardano.Network: [$sel:_stakeActive:NetworkStake] :: NetworkStake -> Lovelaces
- Blockfrost.Types.Cardano.Network: [$sel:_stakeLive:NetworkStake] :: NetworkStake -> Lovelaces
- Blockfrost.Types.Cardano.Network: [$sel:_supplyCirculating:NetworkSupply] :: NetworkSupply -> Lovelaces
- Blockfrost.Types.Cardano.Network: [$sel:_supplyLocked:NetworkSupply] :: NetworkSupply -> Lovelaces
- Blockfrost.Types.Cardano.Network: [$sel:_supplyMax:NetworkSupply] :: NetworkSupply -> Lovelaces
- Blockfrost.Types.Cardano.Network: [$sel:_supplyReserves:NetworkSupply] :: NetworkSupply -> Lovelaces
- Blockfrost.Types.Cardano.Network: [$sel:_supplyTotal:NetworkSupply] :: NetworkSupply -> Lovelaces
- Blockfrost.Types.Cardano.Network: [$sel:_supplyTreasury:NetworkSupply] :: NetworkSupply -> Lovelaces
- Blockfrost.Types.Cardano.Pools: [$sel:_poolActiveStake:Pool] :: Pool -> Lovelaces
- Blockfrost.Types.Cardano.Pools: [$sel:_poolDelegatorAddress:PoolDelegator] :: PoolDelegator -> Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolDelegatorLiveStake:PoolDelegator] :: PoolDelegator -> Lovelaces
- Blockfrost.Types.Cardano.Pools: [$sel:_poolEpochEpoch:PoolEpoch] :: PoolEpoch -> Epoch
- Blockfrost.Types.Cardano.Pools: [$sel:_poolEpochPoolId:PoolEpoch] :: PoolEpoch -> PoolId
- Blockfrost.Types.Cardano.Pools: [$sel:_poolHex:Pool] :: Pool -> Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolHistoryActiveSize:PoolHistory] :: PoolHistory -> Double
- Blockfrost.Types.Cardano.Pools: [$sel:_poolHistoryActiveStake:PoolHistory] :: PoolHistory -> Lovelaces
- Blockfrost.Types.Cardano.Pools: [$sel:_poolHistoryBlocks:PoolHistory] :: PoolHistory -> Integer
- Blockfrost.Types.Cardano.Pools: [$sel:_poolHistoryDelegatorsCount:PoolHistory] :: PoolHistory -> Integer
- Blockfrost.Types.Cardano.Pools: [$sel:_poolHistoryEpoch:PoolHistory] :: PoolHistory -> Epoch
- Blockfrost.Types.Cardano.Pools: [$sel:_poolHistoryFees:PoolHistory] :: PoolHistory -> Lovelaces
- Blockfrost.Types.Cardano.Pools: [$sel:_poolHistoryRewards:PoolHistory] :: PoolHistory -> Lovelaces
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoActiveSize:PoolInfo] :: PoolInfo -> Double
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoActiveStake:PoolInfo] :: PoolInfo -> Lovelaces
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoBlocksEpoch:PoolInfo] :: PoolInfo -> Integer
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoBlocksMinted:PoolInfo] :: PoolInfo -> Integer
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoDeclaredPledge:PoolInfo] :: PoolInfo -> Lovelaces
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoFixedCost:PoolInfo] :: PoolInfo -> Lovelaces
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoHex:PoolInfo] :: PoolInfo -> Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoLiveDelegators:PoolInfo] :: PoolInfo -> Double
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoLivePledge:PoolInfo] :: PoolInfo -> Lovelaces
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoLiveSaturation:PoolInfo] :: PoolInfo -> Double
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoLiveSize:PoolInfo] :: PoolInfo -> Double
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoLiveStake:PoolInfo] :: PoolInfo -> Lovelaces
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoMarginCost:PoolInfo] :: PoolInfo -> Rational
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoOwners:PoolInfo] :: PoolInfo -> [Address]
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoPoolId:PoolInfo] :: PoolInfo -> PoolId
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoRegistration:PoolInfo] :: PoolInfo -> [Text]
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoRetirement:PoolInfo] :: PoolInfo -> [Text]
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoRewardAccount:PoolInfo] :: PoolInfo -> Address
- Blockfrost.Types.Cardano.Pools: [$sel:_poolInfoVrfKey:PoolInfo] :: PoolInfo -> Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolLiveStake:Pool] :: Pool -> Lovelaces
- Blockfrost.Types.Cardano.Pools: [$sel:_poolMetadataDescription:PoolMetadata] :: PoolMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolMetadataHash:PoolMetadata] :: PoolMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolMetadataHex:PoolMetadata] :: PoolMetadata -> Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolMetadataHomepage:PoolMetadata] :: PoolMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolMetadataName:PoolMetadata] :: PoolMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolMetadataPoolId:PoolMetadata] :: PoolMetadata -> PoolId
- Blockfrost.Types.Cardano.Pools: [$sel:_poolMetadataTicker:PoolMetadata] :: PoolMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolMetadataUrl:PoolMetadata] :: PoolMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolPoolId:Pool] :: Pool -> PoolId
- Blockfrost.Types.Cardano.Pools: [$sel:_poolRelayDns:PoolRelay] :: PoolRelay -> Maybe Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolRelayDnsSrv:PoolRelay] :: PoolRelay -> Maybe Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolRelayIpv4:PoolRelay] :: PoolRelay -> Maybe Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolRelayIpv6:PoolRelay] :: PoolRelay -> Maybe Text
- Blockfrost.Types.Cardano.Pools: [$sel:_poolRelayPort:PoolRelay] :: PoolRelay -> Integer
- Blockfrost.Types.Cardano.Pools: [$sel:_poolUpdateAction:PoolUpdate] :: PoolUpdate -> PoolRegistrationAction
- Blockfrost.Types.Cardano.Pools: [$sel:_poolUpdateCertIndex:PoolUpdate] :: PoolUpdate -> Integer
- Blockfrost.Types.Cardano.Pools: [$sel:_poolUpdateTxHash:PoolUpdate] :: PoolUpdate -> TxHash
- Blockfrost.Types.Cardano.Pools: [$sel:getMetadata:PoolMetadataResponse] :: PoolMetadataResponse -> Maybe PoolMetadata
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptCborCbor:ScriptCBOR] :: ScriptCBOR -> Maybe Text
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptDatumCborCbor:ScriptDatumCBOR] :: ScriptDatumCBOR -> Text
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptDatumJsonValue:ScriptDatum] :: ScriptDatum -> Value
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptJsonJson:ScriptJSON] :: ScriptJSON -> Maybe Value
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptRedeemerDatumHash:ScriptRedeemer] :: ScriptRedeemer -> DatumHash
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptRedeemerFee:ScriptRedeemer] :: ScriptRedeemer -> Lovelaces
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptRedeemerPurpose:ScriptRedeemer] :: ScriptRedeemer -> ValidationPurpose
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptRedeemerRedeemerDataHash:ScriptRedeemer] :: ScriptRedeemer -> DatumHash
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptRedeemerTxHash:ScriptRedeemer] :: ScriptRedeemer -> TxHash
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptRedeemerTxIndex:ScriptRedeemer] :: ScriptRedeemer -> Integer
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptRedeemerUnitMem:ScriptRedeemer] :: ScriptRedeemer -> Quantity
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptRedeemerUnitSteps:ScriptRedeemer] :: ScriptRedeemer -> Quantity
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptScriptHash:Script] :: Script -> ScriptHash
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptSerialisedSize:Script] :: Script -> Maybe Integer
- Blockfrost.Types.Cardano.Scripts: [$sel:_scriptType:Script] :: Script -> ScriptType
- Blockfrost.Types.Cardano.Scripts: [$sel:unInlineDatum:InlineDatum] :: InlineDatum -> ScriptDatumCBOR
- Blockfrost.Types.Cardano.Transactions: [$sel:_poolUpdateMetadataDescription:PoolUpdateMetadata] :: PoolUpdateMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Transactions: [$sel:_poolUpdateMetadataHash:PoolUpdateMetadata] :: PoolUpdateMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Transactions: [$sel:_poolUpdateMetadataHomepage:PoolUpdateMetadata] :: PoolUpdateMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Transactions: [$sel:_poolUpdateMetadataName:PoolUpdateMetadata] :: PoolUpdateMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Transactions: [$sel:_poolUpdateMetadataTicker:PoolUpdateMetadata] :: PoolUpdateMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Transactions: [$sel:_poolUpdateMetadataUrl:PoolUpdateMetadata] :: PoolUpdateMetadata -> Maybe Text
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionAssetMintOrBurnCount:Transaction] :: Transaction -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionBlock:Transaction] :: Transaction -> BlockHash
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionBlockHeight:Transaction] :: Transaction -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionCBORCbor:TransactionCBOR] :: TransactionCBOR -> Text
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionDelegationActiveEpoch:TransactionDelegation] :: TransactionDelegation -> Epoch
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionDelegationAddress:TransactionDelegation] :: TransactionDelegation -> Address
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionDelegationCertIndex:TransactionDelegation] :: TransactionDelegation -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionDelegationCount:Transaction] :: Transaction -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionDelegationPoolId:TransactionDelegation] :: TransactionDelegation -> PoolId
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionDeposit:Transaction] :: Transaction -> Lovelaces
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionFees:Transaction] :: Transaction -> Lovelaces
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionHash:Transaction] :: Transaction -> Text
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionIndex:Transaction] :: Transaction -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionInvalidBefore:Transaction] :: Transaction -> Maybe Text
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionInvalidHereafter:Transaction] :: Transaction -> Maybe Text
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionMetaCBORLabel:TransactionMetaCBOR] :: TransactionMetaCBOR -> Text
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionMetaCBORMetadata:TransactionMetaCBOR] :: TransactionMetaCBOR -> Maybe Text
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionMetaJSONJSONMetadata:TransactionMetaJSON] :: TransactionMetaJSON -> Maybe Value
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionMetaJSONLabel:TransactionMetaJSON] :: TransactionMetaJSON -> Text
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionMirAddress:TransactionMir] :: TransactionMir -> Address
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionMirAmount:TransactionMir] :: TransactionMir -> Lovelaces
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionMirCertCount:Transaction] :: Transaction -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionMirCertIndex:TransactionMir] :: TransactionMir -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionMirPot:TransactionMir] :: TransactionMir -> Pot
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionOutputAmount:Transaction] :: Transaction -> [Amount]
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolRetireCount:Transaction] :: Transaction -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolRetiringCertIndex:TransactionPoolRetiring] :: TransactionPoolRetiring -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolRetiringPoolId:TransactionPoolRetiring] :: TransactionPoolRetiring -> PoolId
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolRetiringRetiringEpoch:TransactionPoolRetiring] :: TransactionPoolRetiring -> Epoch
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolUpdateActiveEpoch:TransactionPoolUpdate] :: TransactionPoolUpdate -> Epoch
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolUpdateCertIndex:TransactionPoolUpdate] :: TransactionPoolUpdate -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolUpdateCount:Transaction] :: Transaction -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolUpdateFixedCost:TransactionPoolUpdate] :: TransactionPoolUpdate -> Lovelaces
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolUpdateMarginCost:TransactionPoolUpdate] :: TransactionPoolUpdate -> Double
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolUpdateMetadata:TransactionPoolUpdate] :: TransactionPoolUpdate -> Maybe PoolUpdateMetadata
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolUpdateOwners:TransactionPoolUpdate] :: TransactionPoolUpdate -> [Address]
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolUpdatePledge:TransactionPoolUpdate] :: TransactionPoolUpdate -> Lovelaces
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolUpdatePoolId:TransactionPoolUpdate] :: TransactionPoolUpdate -> PoolId
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolUpdateRelays:TransactionPoolUpdate] :: TransactionPoolUpdate -> [PoolRelay]
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolUpdateRewardAccount:TransactionPoolUpdate] :: TransactionPoolUpdate -> Address
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionPoolUpdateVrfKey:TransactionPoolUpdate] :: TransactionPoolUpdate -> Text
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionRedeemerCount:Transaction] :: Transaction -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionRedeemerDatumHash:TransactionRedeemer] :: TransactionRedeemer -> DatumHash
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionRedeemerFee:TransactionRedeemer] :: TransactionRedeemer -> Lovelaces
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionRedeemerPurpose:TransactionRedeemer] :: TransactionRedeemer -> ValidationPurpose
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionRedeemerRedeemerDataHash:TransactionRedeemer] :: TransactionRedeemer -> DatumHash
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionRedeemerScriptHash:TransactionRedeemer] :: TransactionRedeemer -> ScriptHash
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionRedeemerTxIndex:TransactionRedeemer] :: TransactionRedeemer -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionRedeemerUnitMem:TransactionRedeemer] :: TransactionRedeemer -> Quantity
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionRedeemerUnitSteps:TransactionRedeemer] :: TransactionRedeemer -> Quantity
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionSize:Transaction] :: Transaction -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionSlot:Transaction] :: Transaction -> Slot
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionStakeAddress:TransactionStake] :: TransactionStake -> Address
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionStakeCertCount:Transaction] :: Transaction -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionStakeCertIndex:TransactionStake] :: TransactionStake -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionStakeRegistration:TransactionStake] :: TransactionStake -> Bool
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionUtxoCount:Transaction] :: Transaction -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionUtxosHash:TransactionUtxos] :: TransactionUtxos -> TxHash
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionUtxosInputs:TransactionUtxos] :: TransactionUtxos -> [UtxoInput]
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionUtxosOutputs:TransactionUtxos] :: TransactionUtxos -> [UtxoOutput]
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionValidContract:Transaction] :: Transaction -> Bool
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionWithdrawalAddress:TransactionWithdrawal] :: TransactionWithdrawal -> Address
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionWithdrawalAmount:TransactionWithdrawal] :: TransactionWithdrawal -> Lovelaces
- Blockfrost.Types.Cardano.Transactions: [$sel:_transactionWithdrawalCount:Transaction] :: Transaction -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoInputAddress:UtxoInput] :: UtxoInput -> Address
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoInputAmount:UtxoInput] :: UtxoInput -> [Amount]
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoInputCollateral:UtxoInput] :: UtxoInput -> Bool
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoInputDataHash:UtxoInput] :: UtxoInput -> Maybe DatumHash
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoInputInlineDatum:UtxoInput] :: UtxoInput -> Maybe InlineDatum
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoInputOutputIndex:UtxoInput] :: UtxoInput -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoInputReference:UtxoInput] :: UtxoInput -> Bool
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoInputReferenceScriptHash:UtxoInput] :: UtxoInput -> Maybe ScriptHash
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoInputTxHash:UtxoInput] :: UtxoInput -> TxHash
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoOutputAddress:UtxoOutput] :: UtxoOutput -> Address
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoOutputAmount:UtxoOutput] :: UtxoOutput -> [Amount]
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoOutputCollateral:UtxoOutput] :: UtxoOutput -> Bool
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoOutputDataHash:UtxoOutput] :: UtxoOutput -> Maybe DatumHash
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoOutputInlineDatum:UtxoOutput] :: UtxoOutput -> Maybe InlineDatum
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoOutputOutputIndex:UtxoOutput] :: UtxoOutput -> Integer
- Blockfrost.Types.Cardano.Transactions: [$sel:_utxoOutputReferenceScriptHash:UtxoOutput] :: UtxoOutput -> Maybe ScriptHash
- Blockfrost.Types.Cardano.Utils: [$sel:_derivedAddressAddress:DerivedAddress] :: DerivedAddress -> Text
- Blockfrost.Types.Cardano.Utils: [$sel:_derivedAddressIndex:DerivedAddress] :: DerivedAddress -> Integer
- Blockfrost.Types.Cardano.Utils: [$sel:_derivedAddressRole:DerivedAddress] :: DerivedAddress -> Integer
- Blockfrost.Types.Cardano.Utils: [$sel:_derivedAddressXpub:DerivedAddress] :: DerivedAddress -> Text
- Blockfrost.Types.Cardano.Utils: [$sel:_txEvalBudgetMemory:TxEvalBudget] :: TxEvalBudget -> Integer
- Blockfrost.Types.Cardano.Utils: [$sel:_txEvalBudgetSteps:TxEvalBudget] :: TxEvalBudget -> Integer
- Blockfrost.Types.Cardano.Utils: [$sel:_txEvalInputAdditionalUtxoSet:TxEvalInput] :: TxEvalInput -> Value
- Blockfrost.Types.Cardano.Utils: [$sel:_txEvalInputCbor:TxEvalInput] :: TxEvalInput -> CBORString
- Blockfrost.Types.Cardano.Utils: [$sel:_txEvalResult:TxEval] :: TxEval -> Either TxEvalFailure (Map TxEvalValidator TxEvalBudget)
- Blockfrost.Types.Cardano.Utils: [$sel:_txEvalValidatorIndex:TxEvalValidator] :: TxEvalValidator -> Int
- Blockfrost.Types.Cardano.Utils: [$sel:_txEvalValidatorPurpose:TxEvalValidator] :: TxEvalValidator -> ValidationPurpose
- Blockfrost.Types.Common: [$sel:_metricCalls:Metric] :: Metric -> Integer
- Blockfrost.Types.Common: [$sel:_metricTime:Metric] :: Metric -> POSIXTime
- Blockfrost.Types.Common: [$sel:_urlVersionUrl:URLVersion] :: URLVersion -> Text
- Blockfrost.Types.Common: [$sel:_urlVersionVersion:URLVersion] :: URLVersion -> Text
- Blockfrost.Types.Common: [$sel:isHealthy:Healthy] :: Healthy -> Bool
- Blockfrost.Types.Common: [$sel:serverTime:ServerTime] :: ServerTime -> POSIXTime
- Blockfrost.Types.IPFS: [$sel:_ipfsAddIpfsHash:IPFSAdd] :: IPFSAdd -> Text
- Blockfrost.Types.IPFS: [$sel:_ipfsAddName:IPFSAdd] :: IPFSAdd -> Text
- Blockfrost.Types.IPFS: [$sel:_ipfsAddSize:IPFSAdd] :: IPFSAdd -> Quantity
- Blockfrost.Types.IPFS: [$sel:_ipfsPinChangeIpfsHash:IPFSPinChange] :: IPFSPinChange -> Text
- Blockfrost.Types.IPFS: [$sel:_ipfsPinChangeState:IPFSPinChange] :: IPFSPinChange -> PinState
- Blockfrost.Types.IPFS: [$sel:_ipfsPinIpfsHash:IPFSPin] :: IPFSPin -> Text
- Blockfrost.Types.IPFS: [$sel:_ipfsPinSize:IPFSPin] :: IPFSPin -> Quantity
- Blockfrost.Types.IPFS: [$sel:_ipfsPinState:IPFSPin] :: IPFSPin -> PinState
- Blockfrost.Types.IPFS: [$sel:_ipfsPinTimeCreated:IPFSPin] :: IPFSPin -> POSIXTime
- Blockfrost.Types.IPFS: [$sel:_ipfsPinTimePinned:IPFSPin] :: IPFSPin -> POSIXTime
- Blockfrost.Types.NutLink: [$sel:_nutlinkAddressAddress:NutlinkAddress] :: NutlinkAddress -> Address
- Blockfrost.Types.NutLink: [$sel:_nutlinkAddressMetadata:NutlinkAddress] :: NutlinkAddress -> Maybe Value
- Blockfrost.Types.NutLink: [$sel:_nutlinkAddressMetadataHash:NutlinkAddress] :: NutlinkAddress -> Text
- Blockfrost.Types.NutLink: [$sel:_nutlinkAddressMetadataUrl:NutlinkAddress] :: NutlinkAddress -> Text
- Blockfrost.Types.NutLink: [$sel:_nutlinkAddressTickerCount:NutlinkAddressTicker] :: NutlinkAddressTicker -> Integer
- Blockfrost.Types.NutLink: [$sel:_nutlinkAddressTickerLatestBlock:NutlinkAddressTicker] :: NutlinkAddressTicker -> Integer
- Blockfrost.Types.NutLink: [$sel:_nutlinkAddressTickerName:NutlinkAddressTicker] :: NutlinkAddressTicker -> Text
- Blockfrost.Types.NutLink: [$sel:_nutlinkTickerBlockHeight:NutlinkTicker] :: NutlinkTicker -> Integer
- Blockfrost.Types.NutLink: [$sel:_nutlinkTickerPayload:NutlinkTicker] :: NutlinkTicker -> Value
- Blockfrost.Types.NutLink: [$sel:_nutlinkTickerTxHash:NutlinkTicker] :: NutlinkTicker -> TxHash
- Blockfrost.Types.NutLink: [$sel:_nutlinkTickerTxIndex:NutlinkTicker] :: NutlinkTicker -> Integer
- Blockfrost.Types.Shared.Amount: [$sel:assetAmountExtendedDecimals:AdaAmountExtended] :: AmountExtended -> Maybe Int
- Blockfrost.Types.Shared.Amount: [$sel:assetAmountExtendedHasNftOnchainMetadata:AdaAmountExtended] :: AmountExtended -> Bool
- Blockfrost.Types.Shared.Amount: [$sel:assetAmountExtendedValue:AdaAmountExtended] :: AmountExtended -> SomeDiscrete
- Blockfrost.Types.Shared.BlockIndex: [$sel:blockIndexHeight:BlockIndex] :: BlockIndex -> Integer
- Blockfrost.Types.Shared.BlockIndex: [$sel:blockIndexIndex:BlockIndex] :: BlockIndex -> Maybe Integer
- Blockfrost.Types.Shared.DatumHash: [$sel:unDatumHash:DatumHash] :: DatumHash -> Text
- Blockfrost.Types.Shared.ScriptHash: [$sel:unScriptHash:ScriptHash] :: ScriptHash -> Text
- Blockfrost.Types.Shared.ScriptHash: [$sel:unScriptHashList:ScriptHashList] :: ScriptHashList -> [ScriptHash]
- Blockfrost.Types.Shared.TxHash: [$sel:unTxHash:TxHash] :: TxHash -> Text
- Blockfrost.Types.Shared.TxHash: [$sel:unTxHashObject:TxHashObject] :: TxHashObject -> Text
+ Blockfrost.Auth: [apiKeySettingsQueryProject] :: APIKeyInHeaderSettings -> Text -> IO (Maybe Project)
+ Blockfrost.Auth: [projectEnv] :: Project -> Env
+ Blockfrost.Auth: [projectId] :: Project -> Text
+ Blockfrost.Lens: bytes :: HasBytes s a => Lens' s a
+ Blockfrost.Lens: class HasBytes s a | s -> a
+ Blockfrost.Lens: class HasDrepId s a | s -> a
+ Blockfrost.Lens: class HasDroppedEpoch s a | s -> a
+ Blockfrost.Lens: class HasEnactedEpoch s a | s -> a
+ Blockfrost.Lens: class HasExpiration s a | s -> a
+ Blockfrost.Lens: class HasExpired s a | s -> a
+ Blockfrost.Lens: class HasExpiredEpoch s a | s -> a
+ Blockfrost.Lens: class HasGovernanceDescription s a | s -> a
+ Blockfrost.Lens: class HasGovernanceType s a | s -> a
+ Blockfrost.Lens: class HasHasScript s a | s -> a
+ Blockfrost.Lens: class HasJsonMetadata s a | s -> a
+ Blockfrost.Lens: class HasLastActiveEpoch s a | s -> a
+ Blockfrost.Lens: class HasParameters s a | s -> a
+ Blockfrost.Lens: class HasRatifiedEpoch s a | s -> a
+ Blockfrost.Lens: class HasRetired s a | s -> a
+ Blockfrost.Lens: class HasReturnAddress s a | s -> a
+ Blockfrost.Lens: class HasVoter s a | s -> a
+ Blockfrost.Lens: class HasVoterRole s a | s -> a
+ Blockfrost.Lens: drepId :: HasDrepId s a => Lens' s a
+ Blockfrost.Lens: droppedEpoch :: HasDroppedEpoch s a => Lens' s a
+ Blockfrost.Lens: enactedEpoch :: HasEnactedEpoch s a => Lens' s a
+ Blockfrost.Lens: expiration :: HasExpiration s a => Lens' s a
+ Blockfrost.Lens: expired :: HasExpired s a => Lens' s a
+ Blockfrost.Lens: expiredEpoch :: HasExpiredEpoch s a => Lens' s a
+ Blockfrost.Lens: governanceDescription :: HasGovernanceDescription s a => Lens' s a
+ Blockfrost.Lens: governanceType :: HasGovernanceType s a => Lens' s a
+ Blockfrost.Lens: hasScript :: HasHasScript s a => Lens' s a
+ Blockfrost.Lens: instance (a GHC.Types.~ Blockfrost.Types.Shared.Ada.Lovelaces) => Blockfrost.Lens.HasAmount Blockfrost.Types.Cardano.Governance.DRepDelegator a
+ Blockfrost.Lens: instance (a GHC.Types.~ Blockfrost.Types.Shared.Ada.Lovelaces) => Blockfrost.Lens.HasAmount Blockfrost.Types.Cardano.Governance.DRepInfo a
+ Blockfrost.Lens: instance (a GHC.Types.~ Blockfrost.Types.Shared.Ada.Lovelaces) => Blockfrost.Lens.HasAmount Blockfrost.Types.Cardano.Governance.WithdrawalProposal a
+ Blockfrost.Lens: instance (a GHC.Types.~ Blockfrost.Types.Shared.Ada.Lovelaces) => Blockfrost.Lens.HasDeposit Blockfrost.Types.Cardano.Governance.ProposalInfo a
+ Blockfrost.Lens: instance (a GHC.Types.~ GHC.Maybe.Maybe Blockfrost.Types.Shared.Ada.Lovelaces) => Blockfrost.Lens.HasCoinsPerUtxoSize Blockfrost.Types.Cardano.Governance.ProposedProtocolParams a
+ Blockfrost.Lens: instance (a GHC.Types.~ GHC.Maybe.Maybe Blockfrost.Types.Shared.Ada.Lovelaces) => Blockfrost.Lens.HasCoinsPerUtxoWord Blockfrost.Types.Cardano.Governance.ProposedProtocolParams a
+ Blockfrost.Lens: instance (a GHC.Types.~ GHC.Maybe.Maybe Blockfrost.Types.Shared.Ada.Lovelaces) => Blockfrost.Lens.HasDrepDeposit Blockfrost.Types.Cardano.Governance.ProposedProtocolParams a
+ Blockfrost.Lens: instance (a GHC.Types.~ GHC.Maybe.Maybe Blockfrost.Types.Shared.Ada.Lovelaces) => Blockfrost.Lens.HasGovActionDeposit Blockfrost.Types.Cardano.Governance.ProposedProtocolParams a
+ Blockfrost.Lens: instance (a GHC.Types.~ GHC.Maybe.Maybe Blockfrost.Types.Shared.Ada.Lovelaces) => Blockfrost.Lens.HasKeyDeposit Blockfrost.Types.Cardano.Governance.ProposedProtocolParams a
+ Blockfrost.Lens: instance (a GHC.Types.~ GHC.Maybe.Maybe Blockfrost.Types.Shared.Ada.Lovelaces) => Blockfrost.Lens.HasMinPoolCost Blockfrost.Types.Cardano.Governance.ProposedProtocolParams a
+ Blockfrost.Lens: instance (a GHC.Types.~ GHC.Maybe.Maybe Blockfrost.Types.Shared.Ada.Lovelaces) => Blockfrost.Lens.HasMinUtxo Blockfrost.Types.Cardano.Governance.ProposedProtocolParams a
+ Blockfrost.Lens: instance (a GHC.Types.~ GHC.Maybe.Maybe Blockfrost.Types.Shared.Ada.Lovelaces) => Blockfrost.Lens.HasPoolDeposit Blockfrost.Types.Cardano.Governance.ProposedProtocolParams a
+ Blockfrost.Lens: instance Blockfrost.Lens.HasA0 Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasAction Blockfrost.Types.Cardano.Governance.DRepUpdate Blockfrost.Types.Cardano.Governance.DRepRegistrationAction
+ Blockfrost.Lens: instance Blockfrost.Lens.HasAction Blockfrost.Types.Cardano.Governance.DRepVote Blockfrost.Types.Cardano.Governance.VotingAction
+ Blockfrost.Lens: instance Blockfrost.Lens.HasAction Blockfrost.Types.Cardano.Governance.ProposalVote Blockfrost.Types.Cardano.Governance.VotingAction
+ Blockfrost.Lens: instance Blockfrost.Lens.HasAddress Blockfrost.Types.Cardano.Governance.DRepDelegator Blockfrost.Types.Shared.Address.Address
+ Blockfrost.Lens: instance Blockfrost.Lens.HasBytes Blockfrost.Types.Cardano.Governance.DRepMeta Data.Text.Internal.Text
+ Blockfrost.Lens: instance Blockfrost.Lens.HasBytes Blockfrost.Types.Cardano.Governance.ProposalMeta Data.Text.Internal.Text
+ Blockfrost.Lens: instance Blockfrost.Lens.HasCertIndex Blockfrost.Types.Cardano.Governance.DRepUpdate GHC.Num.Integer.Integer
+ Blockfrost.Lens: instance Blockfrost.Lens.HasCertIndex Blockfrost.Types.Cardano.Governance.DRepVote GHC.Num.Integer.Integer
+ Blockfrost.Lens: instance Blockfrost.Lens.HasCertIndex Blockfrost.Types.Cardano.Governance.ParamProposal GHC.Num.Integer.Integer
+ Blockfrost.Lens: instance Blockfrost.Lens.HasCertIndex Blockfrost.Types.Cardano.Governance.ProposalInfo GHC.Num.Integer.Integer
+ Blockfrost.Lens: instance Blockfrost.Lens.HasCertIndex Blockfrost.Types.Cardano.Governance.ProposalMeta GHC.Num.Integer.Integer
+ Blockfrost.Lens: instance Blockfrost.Lens.HasCertIndex Blockfrost.Types.Cardano.Governance.ProposalVote GHC.Num.Integer.Integer
+ Blockfrost.Lens: instance Blockfrost.Lens.HasCollateralPercent Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Num.Integer.Integer)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasCommitteeMaxTermLength Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe Blockfrost.Types.Shared.Quantity.Quantity)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasCommitteeMinSize Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe Blockfrost.Types.Shared.Quantity.Quantity)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasCostModels Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe Blockfrost.Types.Cardano.Epochs.CostModels)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasCostModelsRaw Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe Blockfrost.Types.Cardano.Epochs.CostModelsRaw)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDecentralisationParam Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDrepActivity Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe Blockfrost.Types.Shared.Quantity.Quantity)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDrepId Blockfrost.Types.Cardano.Accounts.AccountInfo (GHC.Maybe.Maybe Blockfrost.Types.Shared.DRepId.DRepIdBech32)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDrepId Blockfrost.Types.Cardano.Governance.DRep Blockfrost.Types.Shared.DRepId.DRepIdBech32
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDrepId Blockfrost.Types.Cardano.Governance.DRepInfo Blockfrost.Types.Shared.DRepId.DRepIdBech32
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDrepId Blockfrost.Types.Cardano.Governance.DRepMeta Blockfrost.Types.Shared.DRepId.DRepIdBech32
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDroppedEpoch Blockfrost.Types.Cardano.Governance.ProposalInfo (GHC.Maybe.Maybe Blockfrost.Types.Shared.Epoch.Epoch)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDvtCommitteeNoConfidence Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDvtCommitteeNormal Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDvtHardForkInitiation Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDvtMotionNoConfidence Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDvtPPEconomicGroup Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDvtPPGovGroup Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDvtPPNetworkGroup Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDvtPPTechnicalGroup Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDvtTreasuryWithdrawal Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasDvtUpdateToConstitution Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasEMax Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Num.Integer.Integer)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasEnactedEpoch Blockfrost.Types.Cardano.Governance.ProposalInfo (GHC.Maybe.Maybe Blockfrost.Types.Shared.Epoch.Epoch)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasEpoch Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe Blockfrost.Types.Shared.Epoch.Epoch)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasExpiration Blockfrost.Types.Cardano.Governance.ProposalInfo Blockfrost.Types.Shared.Epoch.Epoch
+ Blockfrost.Lens: instance Blockfrost.Lens.HasExpired Blockfrost.Types.Cardano.Governance.DRepInfo GHC.Types.Bool
+ Blockfrost.Lens: instance Blockfrost.Lens.HasExpiredEpoch Blockfrost.Types.Cardano.Governance.ProposalInfo (GHC.Maybe.Maybe Blockfrost.Types.Shared.Epoch.Epoch)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasExtraEntropy Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe Data.Text.Internal.Text)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasGovActionLifetime Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe Blockfrost.Types.Shared.Quantity.Quantity)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasGovernanceDescription Blockfrost.Types.Cardano.Governance.ProposalInfo (GHC.Maybe.Maybe Data.Aeson.Types.Internal.Value)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasGovernanceType Blockfrost.Types.Cardano.Governance.ProposalInfo Blockfrost.Types.Cardano.Governance.ProposalAction
+ Blockfrost.Lens: instance Blockfrost.Lens.HasHasScript Blockfrost.Types.Cardano.Governance.DRepInfo GHC.Types.Bool
+ Blockfrost.Lens: instance Blockfrost.Lens.HasHash Blockfrost.Types.Cardano.Governance.DRepMeta Data.Text.Internal.Text
+ Blockfrost.Lens: instance Blockfrost.Lens.HasHash Blockfrost.Types.Cardano.Governance.ProposalMeta Data.Text.Internal.Text
+ Blockfrost.Lens: instance Blockfrost.Lens.HasHex Blockfrost.Types.Cardano.Governance.DRep Blockfrost.Types.Shared.DRepId.DRepIdHex
+ Blockfrost.Lens: instance Blockfrost.Lens.HasHex Blockfrost.Types.Cardano.Governance.DRepInfo Blockfrost.Types.Shared.DRepId.DRepIdHex
+ Blockfrost.Lens: instance Blockfrost.Lens.HasHex Blockfrost.Types.Cardano.Governance.DRepMeta Blockfrost.Types.Shared.DRepId.DRepIdHex
+ Blockfrost.Lens: instance Blockfrost.Lens.HasJsonMetadata Blockfrost.Types.Cardano.Governance.DRepMeta Data.Aeson.Types.Internal.Value
+ Blockfrost.Lens: instance Blockfrost.Lens.HasJsonMetadata Blockfrost.Types.Cardano.Governance.ProposalMeta Data.Aeson.Types.Internal.Value
+ Blockfrost.Lens: instance Blockfrost.Lens.HasLastActiveEpoch Blockfrost.Types.Cardano.Governance.DRepInfo (GHC.Maybe.Maybe Blockfrost.Types.Shared.Epoch.Epoch)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasMaxBlockExMem Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe Blockfrost.Types.Shared.Quantity.Quantity)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasMaxBlockExSteps Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe Blockfrost.Types.Shared.Quantity.Quantity)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasMaxBlockHeaderSize Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Num.Integer.Integer)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasMaxBlockSize Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Num.Integer.Integer)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasMaxCollateralInputs Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Num.Integer.Integer)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasMaxTxExMem Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe Blockfrost.Types.Shared.Quantity.Quantity)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasMaxTxExSteps Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe Blockfrost.Types.Shared.Quantity.Quantity)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasMaxTxSize Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Num.Integer.Integer)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasMaxValSize Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe Blockfrost.Types.Shared.Quantity.Quantity)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasMinFeeA Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Num.Integer.Integer)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasMinFeeB Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Num.Integer.Integer)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasMinFeeRefScriptCostPerByte Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasNOpt Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Num.Integer.Integer)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasNonce Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe Data.Text.Internal.Text)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasParameters Blockfrost.Types.Cardano.Governance.ParamProposal Blockfrost.Types.Cardano.Governance.ProposedProtocolParams
+ Blockfrost.Lens: instance Blockfrost.Lens.HasPriceMem Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasPriceStep Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasProtocolMajorVer Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Num.Integer.Integer)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasProtocolMinorVer Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Num.Integer.Integer)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasPvtCommitteeNoConfidence Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasPvtCommitteeNormal Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasPvtHardForkInitiation Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasPvtMotionNoConfidence Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasPvtppSecurityGroup Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasRatifiedEpoch Blockfrost.Types.Cardano.Governance.ProposalInfo (GHC.Maybe.Maybe Blockfrost.Types.Shared.Epoch.Epoch)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasRetired Blockfrost.Types.Cardano.Governance.DRepInfo GHC.Types.Bool
+ Blockfrost.Lens: instance Blockfrost.Lens.HasReturnAddress Blockfrost.Types.Cardano.Governance.ProposalInfo Blockfrost.Types.Shared.Address.Address
+ Blockfrost.Lens: instance Blockfrost.Lens.HasRho Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasStakeAddress Blockfrost.Types.Cardano.Governance.WithdrawalProposal Blockfrost.Types.Shared.Address.Address
+ Blockfrost.Lens: instance Blockfrost.Lens.HasTau Blockfrost.Types.Cardano.Governance.ProposedProtocolParams (GHC.Maybe.Maybe GHC.Real.Rational)
+ Blockfrost.Lens: instance Blockfrost.Lens.HasTxHash Blockfrost.Types.Cardano.Governance.DRepUpdate Blockfrost.Types.Shared.TxHash.TxHash
+ Blockfrost.Lens: instance Blockfrost.Lens.HasTxHash Blockfrost.Types.Cardano.Governance.DRepVote Blockfrost.Types.Shared.TxHash.TxHash
+ Blockfrost.Lens: instance Blockfrost.Lens.HasTxHash Blockfrost.Types.Cardano.Governance.ParamProposal Blockfrost.Types.Shared.TxHash.TxHash
+ Blockfrost.Lens: instance Blockfrost.Lens.HasTxHash Blockfrost.Types.Cardano.Governance.ProposalInfo Blockfrost.Types.Shared.TxHash.TxHash
+ Blockfrost.Lens: instance Blockfrost.Lens.HasTxHash Blockfrost.Types.Cardano.Governance.ProposalMeta Blockfrost.Types.Shared.TxHash.TxHash
+ Blockfrost.Lens: instance Blockfrost.Lens.HasTxHash Blockfrost.Types.Cardano.Governance.ProposalVote Blockfrost.Types.Shared.TxHash.TxHash
+ Blockfrost.Lens: instance Blockfrost.Lens.HasUrl Blockfrost.Types.Cardano.Governance.DRepMeta Data.Text.Internal.Text
+ Blockfrost.Lens: instance Blockfrost.Lens.HasUrl Blockfrost.Types.Cardano.Governance.ProposalMeta Data.Text.Internal.Text
+ Blockfrost.Lens: instance Blockfrost.Lens.HasVoter Blockfrost.Types.Cardano.Governance.ProposalVote Blockfrost.Types.Shared.DRepId.DRepId
+ Blockfrost.Lens: instance Blockfrost.Lens.HasVoterRole Blockfrost.Types.Cardano.Governance.ProposalVote Blockfrost.Types.Cardano.Governance.VoterRole
+ Blockfrost.Lens: jsonMetadata :: HasJsonMetadata s a => Lens' s a
+ Blockfrost.Lens: lastActiveEpoch :: HasLastActiveEpoch s a => Lens' s a
+ Blockfrost.Lens: parameters :: HasParameters s a => Lens' s a
+ Blockfrost.Lens: ratifiedEpoch :: HasRatifiedEpoch s a => Lens' s a
+ Blockfrost.Lens: retired :: HasRetired s a => Lens' s a
+ Blockfrost.Lens: returnAddress :: HasReturnAddress s a => Lens' s a
+ Blockfrost.Lens: voter :: HasVoter s a => Lens' s a
+ Blockfrost.Lens: voterRole :: HasVoterRole s a => Lens' s a
+ Blockfrost.Types: [apiErrorCode] :: ApiError -> Int
+ Blockfrost.Types: [apiErrorMessage] :: ApiError -> Text
+ Blockfrost.Types: [apiError] :: ApiError -> Text
+ Blockfrost.Types.Cardano.Accounts: [_accountDelegationActiveEpoch] :: AccountDelegation -> Epoch
+ Blockfrost.Types.Cardano.Accounts: [_accountDelegationAmount] :: AccountDelegation -> Lovelaces
+ Blockfrost.Types.Cardano.Accounts: [_accountDelegationPoolId] :: AccountDelegation -> PoolId
+ Blockfrost.Types.Cardano.Accounts: [_accountDelegationTxHash] :: AccountDelegation -> TxHash
+ Blockfrost.Types.Cardano.Accounts: [_accountHistoryActiveEpoch] :: AccountHistory -> Integer
+ Blockfrost.Types.Cardano.Accounts: [_accountHistoryAmount] :: AccountHistory -> Lovelaces
+ Blockfrost.Types.Cardano.Accounts: [_accountHistoryPoolId] :: AccountHistory -> PoolId
+ Blockfrost.Types.Cardano.Accounts: [_accountInfoActiveEpoch] :: AccountInfo -> Maybe Integer
+ Blockfrost.Types.Cardano.Accounts: [_accountInfoActive] :: AccountInfo -> Bool
+ Blockfrost.Types.Cardano.Accounts: [_accountInfoControlledAmount] :: AccountInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Accounts: [_accountInfoDrepId] :: AccountInfo -> Maybe DRepIdBech32
+ Blockfrost.Types.Cardano.Accounts: [_accountInfoPoolId] :: AccountInfo -> Maybe PoolId
+ Blockfrost.Types.Cardano.Accounts: [_accountInfoReservesSum] :: AccountInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Accounts: [_accountInfoRewardsSum] :: AccountInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Accounts: [_accountInfoStakeAddress] :: AccountInfo -> Address
+ Blockfrost.Types.Cardano.Accounts: [_accountInfoTreasurySum] :: AccountInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Accounts: [_accountInfoWithdrawableAmount] :: AccountInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Accounts: [_accountInfoWithdrawalsSum] :: AccountInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Accounts: [_accountMirAmount] :: AccountMir -> Lovelaces
+ Blockfrost.Types.Cardano.Accounts: [_accountMirTxHash] :: AccountMir -> TxHash
+ Blockfrost.Types.Cardano.Accounts: [_accountRegistrationAction] :: AccountRegistration -> AccountRegistrationAction
+ Blockfrost.Types.Cardano.Accounts: [_accountRegistrationTxHash] :: AccountRegistration -> TxHash
+ Blockfrost.Types.Cardano.Accounts: [_accountRewardAmount] :: AccountReward -> Lovelaces
+ Blockfrost.Types.Cardano.Accounts: [_accountRewardEpoch] :: AccountReward -> Epoch
+ Blockfrost.Types.Cardano.Accounts: [_accountRewardPoolId] :: AccountReward -> PoolId
+ Blockfrost.Types.Cardano.Accounts: [_accountRewardType] :: AccountReward -> RewardType
+ Blockfrost.Types.Cardano.Accounts: [_accountWithdrawalAmount] :: AccountWithdrawal -> Lovelaces
+ Blockfrost.Types.Cardano.Accounts: [_accountWithdrawalTxHash] :: AccountWithdrawal -> TxHash
+ Blockfrost.Types.Cardano.Accounts: [_addressAssociatedAddress] :: AddressAssociated -> Address
+ Blockfrost.Types.Cardano.Accounts: [_addressAssociatedTotalReceivedSum] :: AddressAssociatedTotal -> [Amount]
+ Blockfrost.Types.Cardano.Accounts: [_addressAssociatedTotalSentSum] :: AddressAssociatedTotal -> [Amount]
+ Blockfrost.Types.Cardano.Accounts: [_addressAssociatedTotalStakeAddress] :: AddressAssociatedTotal -> Address
+ Blockfrost.Types.Cardano.Accounts: [_addressAssociatedTotalTxCount] :: AddressAssociatedTotal -> Integer
+ Blockfrost.Types.Cardano.Addresses: [_addressDetailsAddress] :: AddressDetails -> Address
+ Blockfrost.Types.Cardano.Addresses: [_addressDetailsReceivedSum] :: AddressDetails -> [Amount]
+ Blockfrost.Types.Cardano.Addresses: [_addressDetailsSentSum] :: AddressDetails -> [Amount]
+ Blockfrost.Types.Cardano.Addresses: [_addressDetailsTxCount] :: AddressDetails -> Integer
+ Blockfrost.Types.Cardano.Addresses: [_addressInfoAddress] :: AddressInfo -> Address
+ Blockfrost.Types.Cardano.Addresses: [_addressInfoAmount] :: AddressInfo -> [Amount]
+ Blockfrost.Types.Cardano.Addresses: [_addressInfoExtendedAddress] :: AddressInfoExtended -> Address
+ Blockfrost.Types.Cardano.Addresses: [_addressInfoExtendedAmount] :: AddressInfoExtended -> [AmountExtended]
+ Blockfrost.Types.Cardano.Addresses: [_addressInfoExtendedScript] :: AddressInfoExtended -> Bool
+ Blockfrost.Types.Cardano.Addresses: [_addressInfoExtendedStakeAddress] :: AddressInfoExtended -> Maybe Address
+ Blockfrost.Types.Cardano.Addresses: [_addressInfoExtendedType] :: AddressInfoExtended -> AddressType
+ Blockfrost.Types.Cardano.Addresses: [_addressInfoScript] :: AddressInfo -> Bool
+ Blockfrost.Types.Cardano.Addresses: [_addressInfoStakeAddress] :: AddressInfo -> Maybe Address
+ Blockfrost.Types.Cardano.Addresses: [_addressInfoType] :: AddressInfo -> AddressType
+ Blockfrost.Types.Cardano.Addresses: [_addressTransactionBlockHeight] :: AddressTransaction -> Integer
+ Blockfrost.Types.Cardano.Addresses: [_addressTransactionBlockTime] :: AddressTransaction -> POSIXTime
+ Blockfrost.Types.Cardano.Addresses: [_addressTransactionTxHash] :: AddressTransaction -> TxHash
+ Blockfrost.Types.Cardano.Addresses: [_addressTransactionTxIndex] :: AddressTransaction -> Integer
+ Blockfrost.Types.Cardano.Addresses: [_addressUtxoAddress] :: AddressUtxo -> Address
+ Blockfrost.Types.Cardano.Addresses: [_addressUtxoAmount] :: AddressUtxo -> [Amount]
+ Blockfrost.Types.Cardano.Addresses: [_addressUtxoBlock] :: AddressUtxo -> BlockHash
+ Blockfrost.Types.Cardano.Addresses: [_addressUtxoDataHash] :: AddressUtxo -> Maybe DatumHash
+ Blockfrost.Types.Cardano.Addresses: [_addressUtxoInlineDatum] :: AddressUtxo -> Maybe InlineDatum
+ Blockfrost.Types.Cardano.Addresses: [_addressUtxoOutputIndex] :: AddressUtxo -> Integer
+ Blockfrost.Types.Cardano.Addresses: [_addressUtxoReferenceScriptHash] :: AddressUtxo -> Maybe ScriptHash
+ Blockfrost.Types.Cardano.Addresses: [_addressUtxoTxHash] :: AddressUtxo -> TxHash
+ Blockfrost.Types.Cardano.Assets: [_assetAddressAddress] :: AssetAddress -> Address
+ Blockfrost.Types.Cardano.Assets: [_assetAddressQuantity] :: AssetAddress -> Quantity
+ Blockfrost.Types.Cardano.Assets: [_assetDetailsAssetName] :: AssetDetails -> Maybe Text
+ Blockfrost.Types.Cardano.Assets: [_assetDetailsAsset] :: AssetDetails -> Text
+ Blockfrost.Types.Cardano.Assets: [_assetDetailsFingerprint] :: AssetDetails -> Text
+ Blockfrost.Types.Cardano.Assets: [_assetDetailsInitialMintTxHash] :: AssetDetails -> TxHash
+ Blockfrost.Types.Cardano.Assets: [_assetDetailsMetadata] :: AssetDetails -> Maybe AssetMetadata
+ Blockfrost.Types.Cardano.Assets: [_assetDetailsMintOrBurnCount] :: AssetDetails -> Integer
+ Blockfrost.Types.Cardano.Assets: [_assetDetailsOnchainMetadataExtra] :: AssetDetails -> Maybe Text
+ Blockfrost.Types.Cardano.Assets: [_assetDetailsOnchainMetadataValue] :: AssetDetails -> Maybe Value
+ Blockfrost.Types.Cardano.Assets: [_assetDetailsOnchainStandardMetadata] :: AssetDetails -> Maybe AssetOnChainMetadata
+ Blockfrost.Types.Cardano.Assets: [_assetDetailsPolicyId] :: AssetDetails -> PolicyId
+ Blockfrost.Types.Cardano.Assets: [_assetDetailsQuantity] :: AssetDetails -> Quantity
+ Blockfrost.Types.Cardano.Assets: [_assetHistoryAction] :: AssetHistory -> AssetAction
+ Blockfrost.Types.Cardano.Assets: [_assetHistoryAmount] :: AssetHistory -> Quantity
+ Blockfrost.Types.Cardano.Assets: [_assetHistoryTxHash] :: AssetHistory -> TxHash
+ Blockfrost.Types.Cardano.Assets: [_assetInfoAsset] :: AssetInfo -> Text
+ Blockfrost.Types.Cardano.Assets: [_assetInfoQuantity] :: AssetInfo -> Quantity
+ Blockfrost.Types.Cardano.Assets: [_assetMetadataDecimals] :: AssetMetadata -> Maybe Int
+ Blockfrost.Types.Cardano.Assets: [_assetMetadataDescription] :: AssetMetadata -> Text
+ Blockfrost.Types.Cardano.Assets: [_assetMetadataLogo] :: AssetMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Assets: [_assetMetadataName] :: AssetMetadata -> Text
+ Blockfrost.Types.Cardano.Assets: [_assetMetadataTicker] :: AssetMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Assets: [_assetMetadataUrl] :: AssetMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Assets: [_assetOnChainMetadataDescription] :: AssetOnChainMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Assets: [_assetOnChainMetadataFiles] :: AssetOnChainMetadata -> Maybe [MetadataMediaFile]
+ Blockfrost.Types.Cardano.Assets: [_assetOnChainMetadataImage] :: AssetOnChainMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Assets: [_assetOnChainMetadataMediaType] :: AssetOnChainMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Assets: [_assetOnChainMetadataName] :: AssetOnChainMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Assets: [_assetTransactionBlockHeight] :: AssetTransaction -> Integer
+ Blockfrost.Types.Cardano.Assets: [_assetTransactionBlockTime] :: AssetTransaction -> POSIXTime
+ Blockfrost.Types.Cardano.Assets: [_assetTransactionTxHash] :: AssetTransaction -> TxHash
+ Blockfrost.Types.Cardano.Assets: [_assetTransactionTxIndex] :: AssetTransaction -> Integer
+ Blockfrost.Types.Cardano.Assets: [_metadataMediaFileMediaType] :: MetadataMediaFile -> Maybe Text
+ Blockfrost.Types.Cardano.Assets: [_metadataMediaFileName] :: MetadataMediaFile -> Maybe Text
+ Blockfrost.Types.Cardano.Assets: [_metadataMediaFileSrc] :: MetadataMediaFile -> Maybe Text
+ Blockfrost.Types.Cardano.Blocks: [_blockBlockVrf] :: Block -> Maybe Text
+ Blockfrost.Types.Cardano.Blocks: [_blockConfirmations] :: Block -> Integer
+ Blockfrost.Types.Cardano.Blocks: [_blockEpochSlot] :: Block -> Maybe Integer
+ Blockfrost.Types.Cardano.Blocks: [_blockEpoch] :: Block -> Maybe Epoch
+ Blockfrost.Types.Cardano.Blocks: [_blockFees] :: Block -> Maybe Lovelaces
+ Blockfrost.Types.Cardano.Blocks: [_blockHash] :: Block -> BlockHash
+ Blockfrost.Types.Cardano.Blocks: [_blockHeight] :: Block -> Maybe Integer
+ Blockfrost.Types.Cardano.Blocks: [_blockNextBlock] :: Block -> Maybe BlockHash
+ Blockfrost.Types.Cardano.Blocks: [_blockOpCertCounter] :: Block -> Maybe Quantity
+ Blockfrost.Types.Cardano.Blocks: [_blockOpCert] :: Block -> Maybe Text
+ Blockfrost.Types.Cardano.Blocks: [_blockOutput] :: Block -> Maybe Lovelaces
+ Blockfrost.Types.Cardano.Blocks: [_blockPreviousBlock] :: Block -> Maybe BlockHash
+ Blockfrost.Types.Cardano.Blocks: [_blockSize] :: Block -> Integer
+ Blockfrost.Types.Cardano.Blocks: [_blockSlotLeader] :: Block -> Text
+ Blockfrost.Types.Cardano.Blocks: [_blockSlot] :: Block -> Maybe Slot
+ Blockfrost.Types.Cardano.Blocks: [_blockTime] :: Block -> POSIXTime
+ Blockfrost.Types.Cardano.Blocks: [_blockTxCount] :: Block -> Integer
+ Blockfrost.Types.Cardano.Blocks: [getTxHashCBOR] :: TxHashCBOR -> (TxHash, TransactionCBOR)
+ Blockfrost.Types.Cardano.Epochs: [_epochInfoActiveStake] :: EpochInfo -> Maybe Lovelaces
+ Blockfrost.Types.Cardano.Epochs: [_epochInfoBlockCount] :: EpochInfo -> Integer
+ Blockfrost.Types.Cardano.Epochs: [_epochInfoEndTime] :: EpochInfo -> POSIXTime
+ Blockfrost.Types.Cardano.Epochs: [_epochInfoEpoch] :: EpochInfo -> Epoch
+ Blockfrost.Types.Cardano.Epochs: [_epochInfoFees] :: EpochInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Epochs: [_epochInfoFirstBlockTime] :: EpochInfo -> POSIXTime
+ Blockfrost.Types.Cardano.Epochs: [_epochInfoLastBlockTime] :: EpochInfo -> POSIXTime
+ Blockfrost.Types.Cardano.Epochs: [_epochInfoOutput] :: EpochInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Epochs: [_epochInfoStartTime] :: EpochInfo -> POSIXTime
+ Blockfrost.Types.Cardano.Epochs: [_epochInfoTxCount] :: EpochInfo -> Integer
+ Blockfrost.Types.Cardano.Epochs: [_poolStakeDistributionAmount] :: PoolStakeDistribution -> Lovelaces
+ Blockfrost.Types.Cardano.Epochs: [_poolStakeDistributionStakeAddress] :: PoolStakeDistribution -> Address
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsA0] :: ProtocolParams -> Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsCoinsPerUtxoSize] :: ProtocolParams -> Lovelaces
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsCoinsPerUtxoWord] :: ProtocolParams -> Lovelaces
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsCollateralPercent] :: ProtocolParams -> Integer
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsCommitteeMaxTermLength] :: ProtocolParams -> Maybe Quantity
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsCommitteeMinSize] :: ProtocolParams -> Maybe Quantity
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsCostModelsRaw] :: ProtocolParams -> CostModelsRaw
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsCostModels] :: ProtocolParams -> CostModels
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsDecentralisationParam] :: ProtocolParams -> Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsDrepActivity] :: ProtocolParams -> Maybe Quantity
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsDrepDeposit] :: ProtocolParams -> Maybe Lovelaces
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsDvtCommitteeNoConfidence] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsDvtCommitteeNormal] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsDvtHardForkInitiation] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsDvtMotionNoConfidence] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsDvtPPEconomicGroup] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsDvtPPGovGroup] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsDvtPPNetworkGroup] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsDvtPPTechnicalGroup] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsDvtTreasuryWithdrawal] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsDvtUpdateToConstitution] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsEMax] :: ProtocolParams -> Integer
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsEpoch] :: ProtocolParams -> Epoch
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsExtraEntropy] :: ProtocolParams -> Maybe Text
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsGovActionDeposit] :: ProtocolParams -> Maybe Lovelaces
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsGovActionLifetime] :: ProtocolParams -> Maybe Quantity
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsKeyDeposit] :: ProtocolParams -> Lovelaces
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsMaxBlockExMem] :: ProtocolParams -> Quantity
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsMaxBlockExSteps] :: ProtocolParams -> Quantity
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsMaxBlockHeaderSize] :: ProtocolParams -> Integer
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsMaxBlockSize] :: ProtocolParams -> Integer
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsMaxCollateralInputs] :: ProtocolParams -> Integer
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsMaxTxExMem] :: ProtocolParams -> Quantity
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsMaxTxExSteps] :: ProtocolParams -> Quantity
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsMaxTxSize] :: ProtocolParams -> Integer
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsMaxValSize] :: ProtocolParams -> Quantity
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsMinFeeA] :: ProtocolParams -> Integer
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsMinFeeB] :: ProtocolParams -> Integer
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsMinFeeRefScriptCostPerByte] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsMinPoolCost] :: ProtocolParams -> Lovelaces
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsMinUtxo] :: ProtocolParams -> Lovelaces
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsNOpt] :: ProtocolParams -> Integer
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsNonce] :: ProtocolParams -> Text
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsPoolDeposit] :: ProtocolParams -> Lovelaces
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsPriceMem] :: ProtocolParams -> Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsPriceStep] :: ProtocolParams -> Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsProtocolMajorVer] :: ProtocolParams -> Integer
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsProtocolMinorVer] :: ProtocolParams -> Integer
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsPvtCommitteeNoConfidence] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsPvtCommitteeNormal] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsPvtHardForkInitiation] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsPvtMotionNoConfidence] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsPvtppSecurityGroup] :: ProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsRho] :: ProtocolParams -> Rational
+ Blockfrost.Types.Cardano.Epochs: [_protocolParamsTau] :: ProtocolParams -> Rational
+ Blockfrost.Types.Cardano.Epochs: [_stakeDistributionAmount] :: StakeDistribution -> Lovelaces
+ Blockfrost.Types.Cardano.Epochs: [_stakeDistributionPoolId] :: StakeDistribution -> PoolId
+ Blockfrost.Types.Cardano.Epochs: [_stakeDistributionStakeAddress] :: StakeDistribution -> Address
+ Blockfrost.Types.Cardano.Epochs: [unCostModelsRaw] :: CostModelsRaw -> Map ScriptType [Integer]
+ Blockfrost.Types.Cardano.Epochs: [unCostModels] :: CostModels -> Map ScriptType (Map Text Integer)
+ Blockfrost.Types.Cardano.Genesis: [_genesisActiveSlotsCoefficient] :: Genesis -> Rational
+ Blockfrost.Types.Cardano.Genesis: [_genesisEpochLength] :: Genesis -> Integer
+ Blockfrost.Types.Cardano.Genesis: [_genesisMaxKesEvolutions] :: Genesis -> Integer
+ Blockfrost.Types.Cardano.Genesis: [_genesisMaxLovelaceSupply] :: Genesis -> Lovelaces
+ Blockfrost.Types.Cardano.Genesis: [_genesisNetworkMagic] :: Genesis -> Integer
+ Blockfrost.Types.Cardano.Genesis: [_genesisSecurityParam] :: Genesis -> Integer
+ Blockfrost.Types.Cardano.Genesis: [_genesisSlotLength] :: Genesis -> Integer
+ Blockfrost.Types.Cardano.Genesis: [_genesisSlotsPerKesPeriod] :: Genesis -> Integer
+ Blockfrost.Types.Cardano.Genesis: [_genesisSystemStart] :: Genesis -> POSIXTime
+ Blockfrost.Types.Cardano.Genesis: [_genesisUpdateQuorum] :: Genesis -> Integer
+ Blockfrost.Types.Cardano.Governance: DRep :: DRepIdBech32 -> DRepIdHex -> DRep
+ Blockfrost.Types.Cardano.Governance: DRepDelegator :: Address -> Lovelaces -> DRepDelegator
+ Blockfrost.Types.Cardano.Governance: DRepInfo :: DRepIdBech32 -> DRepIdHex -> Lovelaces -> Bool -> Bool -> Bool -> Maybe Epoch -> DRepInfo
+ Blockfrost.Types.Cardano.Governance: DRepMeta :: DRepIdBech32 -> DRepIdHex -> Text -> Text -> Value -> Text -> DRepMeta
+ Blockfrost.Types.Cardano.Governance: DRepRegistrationAction_Deregistered :: DRepRegistrationAction
+ Blockfrost.Types.Cardano.Governance: DRepRegistrationAction_Registered :: DRepRegistrationAction
+ Blockfrost.Types.Cardano.Governance: DRepUpdate :: TxHash -> Integer -> DRepRegistrationAction -> DRepUpdate
+ Blockfrost.Types.Cardano.Governance: DRepVote :: TxHash -> Integer -> VotingAction -> DRepVote
+ Blockfrost.Types.Cardano.Governance: ParamProposal :: TxHash -> Integer -> ProposedProtocolParams -> ParamProposal
+ Blockfrost.Types.Cardano.Governance: Proposal :: TxHash -> Integer -> ProposalAction -> Proposal
+ Blockfrost.Types.Cardano.Governance: ProposalAction_HardForkInitiation :: ProposalAction
+ Blockfrost.Types.Cardano.Governance: ProposalAction_InfoAction :: ProposalAction
+ Blockfrost.Types.Cardano.Governance: ProposalAction_NewCommittee :: ProposalAction
+ Blockfrost.Types.Cardano.Governance: ProposalAction_NewConstitution :: ProposalAction
+ Blockfrost.Types.Cardano.Governance: ProposalAction_NoConfidence :: ProposalAction
+ Blockfrost.Types.Cardano.Governance: ProposalAction_ParameterChange :: ProposalAction
+ Blockfrost.Types.Cardano.Governance: ProposalAction_TreasuryWithdrawals :: ProposalAction
+ Blockfrost.Types.Cardano.Governance: ProposalInfo :: TxHash -> Integer -> ProposalAction -> Lovelaces -> Address -> Maybe Value -> Maybe Epoch -> Maybe Epoch -> Maybe Epoch -> Maybe Epoch -> Epoch -> ProposalInfo
+ Blockfrost.Types.Cardano.Governance: ProposalMeta :: TxHash -> Integer -> Text -> Text -> Value -> Text -> ProposalMeta
+ Blockfrost.Types.Cardano.Governance: ProposalVote :: TxHash -> Integer -> VoterRole -> DRepId -> VotingAction -> ProposalVote
+ Blockfrost.Types.Cardano.Governance: ProposedProtocolParams :: Maybe Epoch -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Integer -> Maybe Lovelaces -> Maybe Lovelaces -> Maybe Integer -> Maybe Integer -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Text -> Maybe Integer -> Maybe Integer -> Maybe Lovelaces -> Maybe Lovelaces -> Maybe Text -> Maybe CostModels -> Maybe CostModelsRaw -> Maybe Rational -> Maybe Rational -> Maybe Quantity -> Maybe Quantity -> Maybe Quantity -> Maybe Quantity -> Maybe Quantity -> Maybe Integer -> Maybe Integer -> Maybe Lovelaces -> Maybe Lovelaces -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Rational -> Maybe Quantity -> Maybe Quantity -> Maybe Quantity -> Maybe Lovelaces -> Maybe Lovelaces -> Maybe Quantity -> Maybe Rational -> ProposedProtocolParams
+ Blockfrost.Types.Cardano.Governance: VoterRole_ConstitutionalCommittee :: VoterRole
+ Blockfrost.Types.Cardano.Governance: VoterRole_DRep :: VoterRole
+ Blockfrost.Types.Cardano.Governance: VoterRole_SPO :: VoterRole
+ Blockfrost.Types.Cardano.Governance: VotingAction_Abstain :: VotingAction
+ Blockfrost.Types.Cardano.Governance: VotingAction_No :: VotingAction
+ Blockfrost.Types.Cardano.Governance: VotingAction_Yes :: VotingAction
+ Blockfrost.Types.Cardano.Governance: WithdrawalProposal :: Address -> Lovelaces -> WithdrawalProposal
+ Blockfrost.Types.Cardano.Governance: [_dRepDelegatorAddress] :: DRepDelegator -> Address
+ Blockfrost.Types.Cardano.Governance: [_dRepDelegatorAmount] :: DRepDelegator -> Lovelaces
+ Blockfrost.Types.Cardano.Governance: [_dRepDrepId] :: DRep -> DRepIdBech32
+ Blockfrost.Types.Cardano.Governance: [_dRepHex] :: DRep -> DRepIdHex
+ Blockfrost.Types.Cardano.Governance: [_dRepInfoAmount] :: DRepInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Governance: [_dRepInfoDrepId] :: DRepInfo -> DRepIdBech32
+ Blockfrost.Types.Cardano.Governance: [_dRepInfoExpired] :: DRepInfo -> Bool
+ Blockfrost.Types.Cardano.Governance: [_dRepInfoHasScript] :: DRepInfo -> Bool
+ Blockfrost.Types.Cardano.Governance: [_dRepInfoHex] :: DRepInfo -> DRepIdHex
+ Blockfrost.Types.Cardano.Governance: [_dRepInfoLastActiveEpoch] :: DRepInfo -> Maybe Epoch
+ Blockfrost.Types.Cardano.Governance: [_dRepInfoRetired] :: DRepInfo -> Bool
+ Blockfrost.Types.Cardano.Governance: [_dRepMetaBytes] :: DRepMeta -> Text
+ Blockfrost.Types.Cardano.Governance: [_dRepMetaDrepId] :: DRepMeta -> DRepIdBech32
+ Blockfrost.Types.Cardano.Governance: [_dRepMetaHash] :: DRepMeta -> Text
+ Blockfrost.Types.Cardano.Governance: [_dRepMetaHex] :: DRepMeta -> DRepIdHex
+ Blockfrost.Types.Cardano.Governance: [_dRepMetaJsonMetadata] :: DRepMeta -> Value
+ Blockfrost.Types.Cardano.Governance: [_dRepMetaUrl] :: DRepMeta -> Text
+ Blockfrost.Types.Cardano.Governance: [_dRepProposalAction] :: Proposal -> ProposalAction
+ Blockfrost.Types.Cardano.Governance: [_dRepProposalCertIndex] :: Proposal -> Integer
+ Blockfrost.Types.Cardano.Governance: [_dRepProposalTxHash] :: Proposal -> TxHash
+ Blockfrost.Types.Cardano.Governance: [_dRepUpdateAction] :: DRepUpdate -> DRepRegistrationAction
+ Blockfrost.Types.Cardano.Governance: [_dRepUpdateCertIndex] :: DRepUpdate -> Integer
+ Blockfrost.Types.Cardano.Governance: [_dRepUpdateTxHash] :: DRepUpdate -> TxHash
+ Blockfrost.Types.Cardano.Governance: [_dRepVoteAction] :: DRepVote -> VotingAction
+ Blockfrost.Types.Cardano.Governance: [_dRepVoteCertIndex] :: DRepVote -> Integer
+ Blockfrost.Types.Cardano.Governance: [_dRepVoteTxHash] :: DRepVote -> TxHash
+ Blockfrost.Types.Cardano.Governance: [_paramProposalCertIndex] :: ParamProposal -> Integer
+ Blockfrost.Types.Cardano.Governance: [_paramProposalParameters] :: ParamProposal -> ProposedProtocolParams
+ Blockfrost.Types.Cardano.Governance: [_paramProposalTxHash] :: ParamProposal -> TxHash
+ Blockfrost.Types.Cardano.Governance: [_proposalInfoCertIndex] :: ProposalInfo -> Integer
+ Blockfrost.Types.Cardano.Governance: [_proposalInfoDeposit] :: ProposalInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Governance: [_proposalInfoDroppedEpoch] :: ProposalInfo -> Maybe Epoch
+ Blockfrost.Types.Cardano.Governance: [_proposalInfoEnactedEpoch] :: ProposalInfo -> Maybe Epoch
+ Blockfrost.Types.Cardano.Governance: [_proposalInfoExpiration] :: ProposalInfo -> Epoch
+ Blockfrost.Types.Cardano.Governance: [_proposalInfoExpiredEpoch] :: ProposalInfo -> Maybe Epoch
+ Blockfrost.Types.Cardano.Governance: [_proposalInfoGovernanceDescription] :: ProposalInfo -> Maybe Value
+ Blockfrost.Types.Cardano.Governance: [_proposalInfoGovernanceType] :: ProposalInfo -> ProposalAction
+ Blockfrost.Types.Cardano.Governance: [_proposalInfoRatifiedEpoch] :: ProposalInfo -> Maybe Epoch
+ Blockfrost.Types.Cardano.Governance: [_proposalInfoReturnAddress] :: ProposalInfo -> Address
+ Blockfrost.Types.Cardano.Governance: [_proposalInfoTxHash] :: ProposalInfo -> TxHash
+ Blockfrost.Types.Cardano.Governance: [_proposalMetaBytes] :: ProposalMeta -> Text
+ Blockfrost.Types.Cardano.Governance: [_proposalMetaCertIndex] :: ProposalMeta -> Integer
+ Blockfrost.Types.Cardano.Governance: [_proposalMetaHash] :: ProposalMeta -> Text
+ Blockfrost.Types.Cardano.Governance: [_proposalMetaJsonMetadata] :: ProposalMeta -> Value
+ Blockfrost.Types.Cardano.Governance: [_proposalMetaTxHash] :: ProposalMeta -> TxHash
+ Blockfrost.Types.Cardano.Governance: [_proposalMetaUrl] :: ProposalMeta -> Text
+ Blockfrost.Types.Cardano.Governance: [_proposalVoteAction] :: ProposalVote -> VotingAction
+ Blockfrost.Types.Cardano.Governance: [_proposalVoteCertIndex] :: ProposalVote -> Integer
+ Blockfrost.Types.Cardano.Governance: [_proposalVoteTxHash] :: ProposalVote -> TxHash
+ Blockfrost.Types.Cardano.Governance: [_proposalVoteVoterRole] :: ProposalVote -> VoterRole
+ Blockfrost.Types.Cardano.Governance: [_proposalVoteVoter] :: ProposalVote -> DRepId
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsA0] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsCoinsPerUtxoSize] :: ProposedProtocolParams -> Maybe Lovelaces
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsCoinsPerUtxoWord] :: ProposedProtocolParams -> Maybe Lovelaces
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsCollateralPercent] :: ProposedProtocolParams -> Maybe Integer
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsCommitteeMaxTermLength] :: ProposedProtocolParams -> Maybe Quantity
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsCommitteeMinSize] :: ProposedProtocolParams -> Maybe Quantity
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsCostModelsRaw] :: ProposedProtocolParams -> Maybe CostModelsRaw
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsCostModels] :: ProposedProtocolParams -> Maybe CostModels
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsDecentralisationParam] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsDrepActivity] :: ProposedProtocolParams -> Maybe Quantity
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsDrepDeposit] :: ProposedProtocolParams -> Maybe Lovelaces
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsDvtCommitteeNoConfidence] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsDvtCommitteeNormal] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsDvtHardForkInitiation] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsDvtMotionNoConfidence] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsDvtPPEconomicGroup] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsDvtPPGovGroup] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsDvtPPNetworkGroup] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsDvtPPTechnicalGroup] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsDvtTreasuryWithdrawal] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsDvtUpdateToConstitution] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsEMax] :: ProposedProtocolParams -> Maybe Integer
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsEpoch] :: ProposedProtocolParams -> Maybe Epoch
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsExtraEntropy] :: ProposedProtocolParams -> Maybe Text
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsGovActionDeposit] :: ProposedProtocolParams -> Maybe Lovelaces
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsGovActionLifetime] :: ProposedProtocolParams -> Maybe Quantity
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsKeyDeposit] :: ProposedProtocolParams -> Maybe Lovelaces
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsMaxBlockExMem] :: ProposedProtocolParams -> Maybe Quantity
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsMaxBlockExSteps] :: ProposedProtocolParams -> Maybe Quantity
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsMaxBlockHeaderSize] :: ProposedProtocolParams -> Maybe Integer
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsMaxBlockSize] :: ProposedProtocolParams -> Maybe Integer
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsMaxCollateralInputs] :: ProposedProtocolParams -> Maybe Integer
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsMaxTxExMem] :: ProposedProtocolParams -> Maybe Quantity
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsMaxTxExSteps] :: ProposedProtocolParams -> Maybe Quantity
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsMaxTxSize] :: ProposedProtocolParams -> Maybe Integer
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsMaxValSize] :: ProposedProtocolParams -> Maybe Quantity
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsMinFeeA] :: ProposedProtocolParams -> Maybe Integer
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsMinFeeB] :: ProposedProtocolParams -> Maybe Integer
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsMinFeeRefScriptCostPerByte] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsMinPoolCost] :: ProposedProtocolParams -> Maybe Lovelaces
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsMinUtxo] :: ProposedProtocolParams -> Maybe Lovelaces
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsNOpt] :: ProposedProtocolParams -> Maybe Integer
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsNonce] :: ProposedProtocolParams -> Maybe Text
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsPoolDeposit] :: ProposedProtocolParams -> Maybe Lovelaces
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsPriceMem] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsPriceStep] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsProtocolMajorVer] :: ProposedProtocolParams -> Maybe Integer
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsProtocolMinorVer] :: ProposedProtocolParams -> Maybe Integer
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsPvtCommitteeNoConfidence] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsPvtCommitteeNormal] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsPvtHardForkInitiation] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsPvtMotionNoConfidence] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsPvtppSecurityGroup] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsRho] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_proposedProtocolParamsTau] :: ProposedProtocolParams -> Maybe Rational
+ Blockfrost.Types.Cardano.Governance: [_withdrawalProposalAmount] :: WithdrawalProposal -> Lovelaces
+ Blockfrost.Types.Cardano.Governance: [_withdrawalProposalStakeAddress] :: WithdrawalProposal -> Address
+ Blockfrost.Types.Cardano.Governance: data DRep
+ Blockfrost.Types.Cardano.Governance: data DRepDelegator
+ Blockfrost.Types.Cardano.Governance: data DRepInfo
+ Blockfrost.Types.Cardano.Governance: data DRepMeta
+ Blockfrost.Types.Cardano.Governance: data DRepRegistrationAction
+ Blockfrost.Types.Cardano.Governance: data DRepUpdate
+ Blockfrost.Types.Cardano.Governance: data DRepVote
+ Blockfrost.Types.Cardano.Governance: data ParamProposal
+ Blockfrost.Types.Cardano.Governance: data Proposal
+ Blockfrost.Types.Cardano.Governance: data ProposalAction
+ Blockfrost.Types.Cardano.Governance: data ProposalInfo
+ Blockfrost.Types.Cardano.Governance: data ProposalMeta
+ Blockfrost.Types.Cardano.Governance: data ProposalVote
+ Blockfrost.Types.Cardano.Governance: data ProposedProtocolParams
+ Blockfrost.Types.Cardano.Governance: data VoterRole
+ Blockfrost.Types.Cardano.Governance: data VotingAction
+ Blockfrost.Types.Cardano.Governance: data WithdrawalProposal
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.DRep
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.DRepDelegator
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.DRepInfo
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.DRepMeta
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.DRepRegistrationAction
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.DRepUpdate
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.DRepVote
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.ParamProposal
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.Proposal
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.ProposalAction
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.ProposalInfo
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.ProposalMeta
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.ProposalVote
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.ProposedProtocolParams
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.VoterRole
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.VotingAction
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Cardano.Governance.WithdrawalProposal
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.DRep
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.DRepDelegator
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.DRepInfo
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.DRepMeta
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.DRepRegistrationAction
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.DRepUpdate
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.DRepVote
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.ParamProposal
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.Proposal
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.ProposalAction
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.ProposalInfo
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.ProposalMeta
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.ProposalVote
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.ProposedProtocolParams
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.VoterRole
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.VotingAction
+ Blockfrost.Types.Cardano.Governance: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Cardano.Governance.WithdrawalProposal
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.DRep
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.DRepDelegator
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.DRepInfo
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.DRepMeta
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.DRepRegistrationAction
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.DRepUpdate
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.DRepVote
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.ParamProposal
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.Proposal
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.ProposalAction
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.ProposalInfo
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.ProposalMeta
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.ProposalVote
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.ProposedProtocolParams
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.VoterRole
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.VotingAction
+ Blockfrost.Types.Cardano.Governance: instance GHC.Classes.Eq Blockfrost.Types.Cardano.Governance.WithdrawalProposal
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.DRep
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.DRepDelegator
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.DRepInfo
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.DRepMeta
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.DRepRegistrationAction
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.DRepUpdate
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.DRepVote
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.ParamProposal
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.Proposal
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.ProposalAction
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.ProposalInfo
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.ProposalMeta
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.ProposalVote
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.ProposedProtocolParams
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.VoterRole
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.VotingAction
+ Blockfrost.Types.Cardano.Governance: instance GHC.Generics.Generic Blockfrost.Types.Cardano.Governance.WithdrawalProposal
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.DRep
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.DRepDelegator
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.DRepInfo
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.DRepMeta
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.DRepRegistrationAction
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.DRepUpdate
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.DRepVote
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.ParamProposal
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.Proposal
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.ProposalAction
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.ProposalInfo
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.ProposalMeta
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.ProposalVote
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.ProposedProtocolParams
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.VoterRole
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.VotingAction
+ Blockfrost.Types.Cardano.Governance: instance GHC.Show.Show Blockfrost.Types.Cardano.Governance.WithdrawalProposal
+ Blockfrost.Types.Cardano.Governance: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Cardano.Governance.DRep
+ Blockfrost.Types.Cardano.Governance: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Cardano.Governance.DRepDelegator
+ Blockfrost.Types.Cardano.Governance: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Cardano.Governance.DRepInfo
+ Blockfrost.Types.Cardano.Governance: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Cardano.Governance.DRepMeta
+ Blockfrost.Types.Cardano.Governance: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Cardano.Governance.DRepUpdate
+ Blockfrost.Types.Cardano.Governance: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Cardano.Governance.DRepVote
+ Blockfrost.Types.Cardano.Governance: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Cardano.Governance.ParamProposal
+ Blockfrost.Types.Cardano.Governance: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Cardano.Governance.Proposal
+ Blockfrost.Types.Cardano.Governance: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Cardano.Governance.ProposalInfo
+ Blockfrost.Types.Cardano.Governance: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Cardano.Governance.ProposalMeta
+ Blockfrost.Types.Cardano.Governance: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Cardano.Governance.ProposalVote
+ Blockfrost.Types.Cardano.Governance: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Cardano.Governance.ProposedProtocolParams
+ Blockfrost.Types.Cardano.Governance: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Cardano.Governance.WithdrawalProposal
+ Blockfrost.Types.Cardano.Mempool: [_address] :: MempoolUTxOInput -> Text
+ Blockfrost.Types.Cardano.Mempool: [_collateral] :: MempoolUTxOInput -> Bool
+ Blockfrost.Types.Cardano.Mempool: [_inputs] :: MempoolTransaction -> [MempoolUTxOInput]
+ Blockfrost.Types.Cardano.Mempool: [_outputIndex] :: MempoolUTxOInput -> Integer
+ Blockfrost.Types.Cardano.Mempool: [_outputs] :: MempoolTransaction -> [UtxoOutput]
+ Blockfrost.Types.Cardano.Mempool: [_purpose] :: MempoolRedeemer -> Text
+ Blockfrost.Types.Cardano.Mempool: [_redeemers] :: MempoolTransaction -> Maybe [MempoolRedeemer]
+ Blockfrost.Types.Cardano.Mempool: [_reference] :: MempoolUTxOInput -> Bool
+ Blockfrost.Types.Cardano.Mempool: [_transactionAssetMintOrBurnCount] :: TransactionInMempool -> Integer
+ Blockfrost.Types.Cardano.Mempool: [_transactionDelegationCount] :: TransactionInMempool -> Integer
+ Blockfrost.Types.Cardano.Mempool: [_transactionDeposit] :: TransactionInMempool -> Lovelaces
+ Blockfrost.Types.Cardano.Mempool: [_transactionFees] :: TransactionInMempool -> Lovelaces
+ Blockfrost.Types.Cardano.Mempool: [_transactionHash] :: TransactionInMempool -> Text
+ Blockfrost.Types.Cardano.Mempool: [_transactionInvalidBefore] :: TransactionInMempool -> Maybe Text
+ Blockfrost.Types.Cardano.Mempool: [_transactionInvalidHereafter] :: TransactionInMempool -> Maybe Text
+ Blockfrost.Types.Cardano.Mempool: [_transactionMirCertCount] :: TransactionInMempool -> Integer
+ Blockfrost.Types.Cardano.Mempool: [_transactionOutputAmount] :: TransactionInMempool -> [Amount]
+ Blockfrost.Types.Cardano.Mempool: [_transactionPoolRetireCount] :: TransactionInMempool -> Integer
+ Blockfrost.Types.Cardano.Mempool: [_transactionPoolUpdateCount] :: TransactionInMempool -> Integer
+ Blockfrost.Types.Cardano.Mempool: [_transactionRedeemerCount] :: TransactionInMempool -> Integer
+ Blockfrost.Types.Cardano.Mempool: [_transactionSize] :: TransactionInMempool -> Integer
+ Blockfrost.Types.Cardano.Mempool: [_transactionStakeCertCount] :: TransactionInMempool -> Integer
+ Blockfrost.Types.Cardano.Mempool: [_transactionUtxoCount] :: TransactionInMempool -> Integer
+ Blockfrost.Types.Cardano.Mempool: [_transactionValidContract] :: TransactionInMempool -> Bool
+ Blockfrost.Types.Cardano.Mempool: [_transactionWithdrawalCount] :: TransactionInMempool -> Integer
+ Blockfrost.Types.Cardano.Mempool: [_txHash] :: MempoolUTxOInput -> Text
+ Blockfrost.Types.Cardano.Mempool: [_tx] :: MempoolTransaction -> TransactionInMempool
+ Blockfrost.Types.Cardano.Mempool: [_tx_index] :: MempoolRedeemer -> Integer
+ Blockfrost.Types.Cardano.Mempool: [_unit_mem] :: MempoolRedeemer -> Text
+ Blockfrost.Types.Cardano.Mempool: [_unit_steps] :: MempoolRedeemer -> Text
+ Blockfrost.Types.Cardano.Metadata: [_txMetaCBORMetadata] :: TxMetaCBOR -> Maybe Text
+ Blockfrost.Types.Cardano.Metadata: [_txMetaCBORTxHash] :: TxMetaCBOR -> TxHash
+ Blockfrost.Types.Cardano.Metadata: [_txMetaCip10] :: TxMeta -> Maybe Text
+ Blockfrost.Types.Cardano.Metadata: [_txMetaCount] :: TxMeta -> Quantity
+ Blockfrost.Types.Cardano.Metadata: [_txMetaJSONJSONMetadata] :: TxMetaJSON -> Maybe Value
+ Blockfrost.Types.Cardano.Metadata: [_txMetaJSONTxHash] :: TxMetaJSON -> TxHash
+ Blockfrost.Types.Cardano.Metadata: [_txMetaLabel] :: TxMeta -> Text
+ Blockfrost.Types.Cardano.Network: [_boundEpoch] :: NetworkEraBound -> Epoch
+ Blockfrost.Types.Cardano.Network: [_boundSlot] :: NetworkEraBound -> Slot
+ Blockfrost.Types.Cardano.Network: [_boundTime] :: NetworkEraBound -> NominalDiffTime
+ Blockfrost.Types.Cardano.Network: [_networkEraEnd] :: NetworkEraSummary -> NetworkEraBound
+ Blockfrost.Types.Cardano.Network: [_networkEraParameters] :: NetworkEraSummary -> NetworkEraParameters
+ Blockfrost.Types.Cardano.Network: [_networkEraStart] :: NetworkEraSummary -> NetworkEraBound
+ Blockfrost.Types.Cardano.Network: [_networkStake] :: Network -> NetworkStake
+ Blockfrost.Types.Cardano.Network: [_networkSupply] :: Network -> NetworkSupply
+ Blockfrost.Types.Cardano.Network: [_parametersEpochLength] :: NetworkEraParameters -> EpochLength
+ Blockfrost.Types.Cardano.Network: [_parametersSafeZone] :: NetworkEraParameters -> Word64
+ Blockfrost.Types.Cardano.Network: [_parametersSlotLength] :: NetworkEraParameters -> NominalDiffTime
+ Blockfrost.Types.Cardano.Network: [_stakeActive] :: NetworkStake -> Lovelaces
+ Blockfrost.Types.Cardano.Network: [_stakeLive] :: NetworkStake -> Lovelaces
+ Blockfrost.Types.Cardano.Network: [_supplyCirculating] :: NetworkSupply -> Lovelaces
+ Blockfrost.Types.Cardano.Network: [_supplyLocked] :: NetworkSupply -> Lovelaces
+ Blockfrost.Types.Cardano.Network: [_supplyMax] :: NetworkSupply -> Lovelaces
+ Blockfrost.Types.Cardano.Network: [_supplyReserves] :: NetworkSupply -> Lovelaces
+ Blockfrost.Types.Cardano.Network: [_supplyTotal] :: NetworkSupply -> Lovelaces
+ Blockfrost.Types.Cardano.Network: [_supplyTreasury] :: NetworkSupply -> Lovelaces
+ Blockfrost.Types.Cardano.Pools: [_poolActiveStake] :: Pool -> Lovelaces
+ Blockfrost.Types.Cardano.Pools: [_poolDelegatorAddress] :: PoolDelegator -> Text
+ Blockfrost.Types.Cardano.Pools: [_poolDelegatorLiveStake] :: PoolDelegator -> Lovelaces
+ Blockfrost.Types.Cardano.Pools: [_poolEpochEpoch] :: PoolEpoch -> Epoch
+ Blockfrost.Types.Cardano.Pools: [_poolEpochPoolId] :: PoolEpoch -> PoolId
+ Blockfrost.Types.Cardano.Pools: [_poolHex] :: Pool -> Text
+ Blockfrost.Types.Cardano.Pools: [_poolHistoryActiveSize] :: PoolHistory -> Double
+ Blockfrost.Types.Cardano.Pools: [_poolHistoryActiveStake] :: PoolHistory -> Lovelaces
+ Blockfrost.Types.Cardano.Pools: [_poolHistoryBlocks] :: PoolHistory -> Integer
+ Blockfrost.Types.Cardano.Pools: [_poolHistoryDelegatorsCount] :: PoolHistory -> Integer
+ Blockfrost.Types.Cardano.Pools: [_poolHistoryEpoch] :: PoolHistory -> Epoch
+ Blockfrost.Types.Cardano.Pools: [_poolHistoryFees] :: PoolHistory -> Lovelaces
+ Blockfrost.Types.Cardano.Pools: [_poolHistoryRewards] :: PoolHistory -> Lovelaces
+ Blockfrost.Types.Cardano.Pools: [_poolInfoActiveSize] :: PoolInfo -> Double
+ Blockfrost.Types.Cardano.Pools: [_poolInfoActiveStake] :: PoolInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Pools: [_poolInfoBlocksEpoch] :: PoolInfo -> Integer
+ Blockfrost.Types.Cardano.Pools: [_poolInfoBlocksMinted] :: PoolInfo -> Integer
+ Blockfrost.Types.Cardano.Pools: [_poolInfoDeclaredPledge] :: PoolInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Pools: [_poolInfoFixedCost] :: PoolInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Pools: [_poolInfoHex] :: PoolInfo -> Text
+ Blockfrost.Types.Cardano.Pools: [_poolInfoLiveDelegators] :: PoolInfo -> Double
+ Blockfrost.Types.Cardano.Pools: [_poolInfoLivePledge] :: PoolInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Pools: [_poolInfoLiveSaturation] :: PoolInfo -> Double
+ Blockfrost.Types.Cardano.Pools: [_poolInfoLiveSize] :: PoolInfo -> Double
+ Blockfrost.Types.Cardano.Pools: [_poolInfoLiveStake] :: PoolInfo -> Lovelaces
+ Blockfrost.Types.Cardano.Pools: [_poolInfoMarginCost] :: PoolInfo -> Rational
+ Blockfrost.Types.Cardano.Pools: [_poolInfoOwners] :: PoolInfo -> [Address]
+ Blockfrost.Types.Cardano.Pools: [_poolInfoPoolId] :: PoolInfo -> PoolId
+ Blockfrost.Types.Cardano.Pools: [_poolInfoRegistration] :: PoolInfo -> [Text]
+ Blockfrost.Types.Cardano.Pools: [_poolInfoRetirement] :: PoolInfo -> [Text]
+ Blockfrost.Types.Cardano.Pools: [_poolInfoRewardAccount] :: PoolInfo -> Address
+ Blockfrost.Types.Cardano.Pools: [_poolInfoVrfKey] :: PoolInfo -> Text
+ Blockfrost.Types.Cardano.Pools: [_poolLiveStake] :: Pool -> Lovelaces
+ Blockfrost.Types.Cardano.Pools: [_poolMetadataDescription] :: PoolMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Pools: [_poolMetadataHash] :: PoolMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Pools: [_poolMetadataHex] :: PoolMetadata -> Text
+ Blockfrost.Types.Cardano.Pools: [_poolMetadataHomepage] :: PoolMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Pools: [_poolMetadataName] :: PoolMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Pools: [_poolMetadataPoolId] :: PoolMetadata -> PoolId
+ Blockfrost.Types.Cardano.Pools: [_poolMetadataTicker] :: PoolMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Pools: [_poolMetadataUrl] :: PoolMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Pools: [_poolPoolId] :: Pool -> PoolId
+ Blockfrost.Types.Cardano.Pools: [_poolRelayDnsSrv] :: PoolRelay -> Maybe Text
+ Blockfrost.Types.Cardano.Pools: [_poolRelayDns] :: PoolRelay -> Maybe Text
+ Blockfrost.Types.Cardano.Pools: [_poolRelayIpv4] :: PoolRelay -> Maybe Text
+ Blockfrost.Types.Cardano.Pools: [_poolRelayIpv6] :: PoolRelay -> Maybe Text
+ Blockfrost.Types.Cardano.Pools: [_poolRelayPort] :: PoolRelay -> Integer
+ Blockfrost.Types.Cardano.Pools: [_poolUpdateAction] :: PoolUpdate -> PoolRegistrationAction
+ Blockfrost.Types.Cardano.Pools: [_poolUpdateCertIndex] :: PoolUpdate -> Integer
+ Blockfrost.Types.Cardano.Pools: [_poolUpdateTxHash] :: PoolUpdate -> TxHash
+ Blockfrost.Types.Cardano.Pools: [getMetadata] :: PoolMetadataResponse -> Maybe PoolMetadata
+ Blockfrost.Types.Cardano.Scripts: [_scriptCborCbor] :: ScriptCBOR -> Maybe Text
+ Blockfrost.Types.Cardano.Scripts: [_scriptDatumCborCbor] :: ScriptDatumCBOR -> Text
+ Blockfrost.Types.Cardano.Scripts: [_scriptDatumJsonValue] :: ScriptDatum -> Value
+ Blockfrost.Types.Cardano.Scripts: [_scriptJsonJson] :: ScriptJSON -> Maybe Value
+ Blockfrost.Types.Cardano.Scripts: [_scriptRedeemerDatumHash] :: ScriptRedeemer -> DatumHash
+ Blockfrost.Types.Cardano.Scripts: [_scriptRedeemerFee] :: ScriptRedeemer -> Lovelaces
+ Blockfrost.Types.Cardano.Scripts: [_scriptRedeemerPurpose] :: ScriptRedeemer -> ValidationPurpose
+ Blockfrost.Types.Cardano.Scripts: [_scriptRedeemerRedeemerDataHash] :: ScriptRedeemer -> DatumHash
+ Blockfrost.Types.Cardano.Scripts: [_scriptRedeemerTxHash] :: ScriptRedeemer -> TxHash
+ Blockfrost.Types.Cardano.Scripts: [_scriptRedeemerTxIndex] :: ScriptRedeemer -> Integer
+ Blockfrost.Types.Cardano.Scripts: [_scriptRedeemerUnitMem] :: ScriptRedeemer -> Quantity
+ Blockfrost.Types.Cardano.Scripts: [_scriptRedeemerUnitSteps] :: ScriptRedeemer -> Quantity
+ Blockfrost.Types.Cardano.Scripts: [_scriptScriptHash] :: Script -> ScriptHash
+ Blockfrost.Types.Cardano.Scripts: [_scriptSerialisedSize] :: Script -> Maybe Integer
+ Blockfrost.Types.Cardano.Scripts: [_scriptType] :: Script -> ScriptType
+ Blockfrost.Types.Cardano.Scripts: [unInlineDatum] :: InlineDatum -> ScriptDatumCBOR
+ Blockfrost.Types.Cardano.Transactions: [_poolUpdateMetadataDescription] :: PoolUpdateMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Transactions: [_poolUpdateMetadataHash] :: PoolUpdateMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Transactions: [_poolUpdateMetadataHomepage] :: PoolUpdateMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Transactions: [_poolUpdateMetadataName] :: PoolUpdateMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Transactions: [_poolUpdateMetadataTicker] :: PoolUpdateMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Transactions: [_poolUpdateMetadataUrl] :: PoolUpdateMetadata -> Maybe Text
+ Blockfrost.Types.Cardano.Transactions: [_transactionAssetMintOrBurnCount] :: Transaction -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionBlockHeight] :: Transaction -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionBlock] :: Transaction -> BlockHash
+ Blockfrost.Types.Cardano.Transactions: [_transactionCBORCbor] :: TransactionCBOR -> Text
+ Blockfrost.Types.Cardano.Transactions: [_transactionDelegationActiveEpoch] :: TransactionDelegation -> Epoch
+ Blockfrost.Types.Cardano.Transactions: [_transactionDelegationAddress] :: TransactionDelegation -> Address
+ Blockfrost.Types.Cardano.Transactions: [_transactionDelegationCertIndex] :: TransactionDelegation -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionDelegationCount] :: Transaction -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionDelegationPoolId] :: TransactionDelegation -> PoolId
+ Blockfrost.Types.Cardano.Transactions: [_transactionDeposit] :: Transaction -> Lovelaces
+ Blockfrost.Types.Cardano.Transactions: [_transactionFees] :: Transaction -> Lovelaces
+ Blockfrost.Types.Cardano.Transactions: [_transactionHash] :: Transaction -> Text
+ Blockfrost.Types.Cardano.Transactions: [_transactionIndex] :: Transaction -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionInvalidBefore] :: Transaction -> Maybe Text
+ Blockfrost.Types.Cardano.Transactions: [_transactionInvalidHereafter] :: Transaction -> Maybe Text
+ Blockfrost.Types.Cardano.Transactions: [_transactionMetaCBORLabel] :: TransactionMetaCBOR -> Text
+ Blockfrost.Types.Cardano.Transactions: [_transactionMetaCBORMetadata] :: TransactionMetaCBOR -> Maybe Text
+ Blockfrost.Types.Cardano.Transactions: [_transactionMetaJSONJSONMetadata] :: TransactionMetaJSON -> Maybe Value
+ Blockfrost.Types.Cardano.Transactions: [_transactionMetaJSONLabel] :: TransactionMetaJSON -> Text
+ Blockfrost.Types.Cardano.Transactions: [_transactionMirAddress] :: TransactionMir -> Address
+ Blockfrost.Types.Cardano.Transactions: [_transactionMirAmount] :: TransactionMir -> Lovelaces
+ Blockfrost.Types.Cardano.Transactions: [_transactionMirCertCount] :: Transaction -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionMirCertIndex] :: TransactionMir -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionMirPot] :: TransactionMir -> Pot
+ Blockfrost.Types.Cardano.Transactions: [_transactionOutputAmount] :: Transaction -> [Amount]
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolRetireCount] :: Transaction -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolRetiringCertIndex] :: TransactionPoolRetiring -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolRetiringPoolId] :: TransactionPoolRetiring -> PoolId
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolRetiringRetiringEpoch] :: TransactionPoolRetiring -> Epoch
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolUpdateActiveEpoch] :: TransactionPoolUpdate -> Epoch
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolUpdateCertIndex] :: TransactionPoolUpdate -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolUpdateCount] :: Transaction -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolUpdateFixedCost] :: TransactionPoolUpdate -> Lovelaces
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolUpdateMarginCost] :: TransactionPoolUpdate -> Double
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolUpdateMetadata] :: TransactionPoolUpdate -> Maybe PoolUpdateMetadata
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolUpdateOwners] :: TransactionPoolUpdate -> [Address]
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolUpdatePledge] :: TransactionPoolUpdate -> Lovelaces
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolUpdatePoolId] :: TransactionPoolUpdate -> PoolId
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolUpdateRelays] :: TransactionPoolUpdate -> [PoolRelay]
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolUpdateRewardAccount] :: TransactionPoolUpdate -> Address
+ Blockfrost.Types.Cardano.Transactions: [_transactionPoolUpdateVrfKey] :: TransactionPoolUpdate -> Text
+ Blockfrost.Types.Cardano.Transactions: [_transactionRedeemerCount] :: Transaction -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionRedeemerDatumHash] :: TransactionRedeemer -> DatumHash
+ Blockfrost.Types.Cardano.Transactions: [_transactionRedeemerFee] :: TransactionRedeemer -> Lovelaces
+ Blockfrost.Types.Cardano.Transactions: [_transactionRedeemerPurpose] :: TransactionRedeemer -> ValidationPurpose
+ Blockfrost.Types.Cardano.Transactions: [_transactionRedeemerRedeemerDataHash] :: TransactionRedeemer -> DatumHash
+ Blockfrost.Types.Cardano.Transactions: [_transactionRedeemerScriptHash] :: TransactionRedeemer -> ScriptHash
+ Blockfrost.Types.Cardano.Transactions: [_transactionRedeemerTxIndex] :: TransactionRedeemer -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionRedeemerUnitMem] :: TransactionRedeemer -> Quantity
+ Blockfrost.Types.Cardano.Transactions: [_transactionRedeemerUnitSteps] :: TransactionRedeemer -> Quantity
+ Blockfrost.Types.Cardano.Transactions: [_transactionSize] :: Transaction -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionSlot] :: Transaction -> Slot
+ Blockfrost.Types.Cardano.Transactions: [_transactionStakeAddress] :: TransactionStake -> Address
+ Blockfrost.Types.Cardano.Transactions: [_transactionStakeCertCount] :: Transaction -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionStakeCertIndex] :: TransactionStake -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionStakeRegistration] :: TransactionStake -> Bool
+ Blockfrost.Types.Cardano.Transactions: [_transactionUtxoCount] :: Transaction -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_transactionUtxosHash] :: TransactionUtxos -> TxHash
+ Blockfrost.Types.Cardano.Transactions: [_transactionUtxosInputs] :: TransactionUtxos -> [UtxoInput]
+ Blockfrost.Types.Cardano.Transactions: [_transactionUtxosOutputs] :: TransactionUtxos -> [UtxoOutput]
+ Blockfrost.Types.Cardano.Transactions: [_transactionValidContract] :: Transaction -> Bool
+ Blockfrost.Types.Cardano.Transactions: [_transactionWithdrawalAddress] :: TransactionWithdrawal -> Address
+ Blockfrost.Types.Cardano.Transactions: [_transactionWithdrawalAmount] :: TransactionWithdrawal -> Lovelaces
+ Blockfrost.Types.Cardano.Transactions: [_transactionWithdrawalCount] :: Transaction -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_utxoInputAddress] :: UtxoInput -> Address
+ Blockfrost.Types.Cardano.Transactions: [_utxoInputAmount] :: UtxoInput -> [Amount]
+ Blockfrost.Types.Cardano.Transactions: [_utxoInputCollateral] :: UtxoInput -> Bool
+ Blockfrost.Types.Cardano.Transactions: [_utxoInputDataHash] :: UtxoInput -> Maybe DatumHash
+ Blockfrost.Types.Cardano.Transactions: [_utxoInputInlineDatum] :: UtxoInput -> Maybe InlineDatum
+ Blockfrost.Types.Cardano.Transactions: [_utxoInputOutputIndex] :: UtxoInput -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_utxoInputReferenceScriptHash] :: UtxoInput -> Maybe ScriptHash
+ Blockfrost.Types.Cardano.Transactions: [_utxoInputReference] :: UtxoInput -> Bool
+ Blockfrost.Types.Cardano.Transactions: [_utxoInputTxHash] :: UtxoInput -> TxHash
+ Blockfrost.Types.Cardano.Transactions: [_utxoOutputAddress] :: UtxoOutput -> Address
+ Blockfrost.Types.Cardano.Transactions: [_utxoOutputAmount] :: UtxoOutput -> [Amount]
+ Blockfrost.Types.Cardano.Transactions: [_utxoOutputCollateral] :: UtxoOutput -> Bool
+ Blockfrost.Types.Cardano.Transactions: [_utxoOutputDataHash] :: UtxoOutput -> Maybe DatumHash
+ Blockfrost.Types.Cardano.Transactions: [_utxoOutputInlineDatum] :: UtxoOutput -> Maybe InlineDatum
+ Blockfrost.Types.Cardano.Transactions: [_utxoOutputOutputIndex] :: UtxoOutput -> Integer
+ Blockfrost.Types.Cardano.Transactions: [_utxoOutputReferenceScriptHash] :: UtxoOutput -> Maybe ScriptHash
+ Blockfrost.Types.Cardano.Utils: [_derivedAddressAddress] :: DerivedAddress -> Text
+ Blockfrost.Types.Cardano.Utils: [_derivedAddressIndex] :: DerivedAddress -> Integer
+ Blockfrost.Types.Cardano.Utils: [_derivedAddressRole] :: DerivedAddress -> Integer
+ Blockfrost.Types.Cardano.Utils: [_derivedAddressXpub] :: DerivedAddress -> Text
+ Blockfrost.Types.Cardano.Utils: [_txEvalBudgetMemory] :: TxEvalBudget -> Integer
+ Blockfrost.Types.Cardano.Utils: [_txEvalBudgetSteps] :: TxEvalBudget -> Integer
+ Blockfrost.Types.Cardano.Utils: [_txEvalInputAdditionalUtxoSet] :: TxEvalInput -> Value
+ Blockfrost.Types.Cardano.Utils: [_txEvalInputCbor] :: TxEvalInput -> CBORString
+ Blockfrost.Types.Cardano.Utils: [_txEvalResult] :: TxEval -> Either TxEvalFailure (Map TxEvalValidator TxEvalBudget)
+ Blockfrost.Types.Cardano.Utils: [_txEvalValidatorIndex] :: TxEvalValidator -> Int
+ Blockfrost.Types.Cardano.Utils: [_txEvalValidatorPurpose] :: TxEvalValidator -> ValidationPurpose
+ Blockfrost.Types.Common: [_metricCalls] :: Metric -> Integer
+ Blockfrost.Types.Common: [_metricTime] :: Metric -> POSIXTime
+ Blockfrost.Types.Common: [_urlVersionUrl] :: URLVersion -> Text
+ Blockfrost.Types.Common: [_urlVersionVersion] :: URLVersion -> Text
+ Blockfrost.Types.Common: [isHealthy] :: Healthy -> Bool
+ Blockfrost.Types.Common: [serverTime] :: ServerTime -> POSIXTime
+ Blockfrost.Types.IPFS: [_ipfsAddIpfsHash] :: IPFSAdd -> Text
+ Blockfrost.Types.IPFS: [_ipfsAddName] :: IPFSAdd -> Text
+ Blockfrost.Types.IPFS: [_ipfsAddSize] :: IPFSAdd -> Quantity
+ Blockfrost.Types.IPFS: [_ipfsPinChangeIpfsHash] :: IPFSPinChange -> Text
+ Blockfrost.Types.IPFS: [_ipfsPinChangeState] :: IPFSPinChange -> PinState
+ Blockfrost.Types.IPFS: [_ipfsPinIpfsHash] :: IPFSPin -> Text
+ Blockfrost.Types.IPFS: [_ipfsPinSize] :: IPFSPin -> Quantity
+ Blockfrost.Types.IPFS: [_ipfsPinState] :: IPFSPin -> PinState
+ Blockfrost.Types.IPFS: [_ipfsPinTimeCreated] :: IPFSPin -> POSIXTime
+ Blockfrost.Types.IPFS: [_ipfsPinTimePinned] :: IPFSPin -> POSIXTime
+ Blockfrost.Types.NutLink: [_nutlinkAddressAddress] :: NutlinkAddress -> Address
+ Blockfrost.Types.NutLink: [_nutlinkAddressMetadataHash] :: NutlinkAddress -> Text
+ Blockfrost.Types.NutLink: [_nutlinkAddressMetadataUrl] :: NutlinkAddress -> Text
+ Blockfrost.Types.NutLink: [_nutlinkAddressMetadata] :: NutlinkAddress -> Maybe Value
+ Blockfrost.Types.NutLink: [_nutlinkAddressTickerCount] :: NutlinkAddressTicker -> Integer
+ Blockfrost.Types.NutLink: [_nutlinkAddressTickerLatestBlock] :: NutlinkAddressTicker -> Integer
+ Blockfrost.Types.NutLink: [_nutlinkAddressTickerName] :: NutlinkAddressTicker -> Text
+ Blockfrost.Types.NutLink: [_nutlinkTickerBlockHeight] :: NutlinkTicker -> Integer
+ Blockfrost.Types.NutLink: [_nutlinkTickerPayload] :: NutlinkTicker -> Value
+ Blockfrost.Types.NutLink: [_nutlinkTickerTxHash] :: NutlinkTicker -> TxHash
+ Blockfrost.Types.NutLink: [_nutlinkTickerTxIndex] :: NutlinkTicker -> Integer
+ Blockfrost.Types.Shared.Amount: [assetAmountExtendedDecimals] :: AmountExtended -> Maybe Int
+ Blockfrost.Types.Shared.Amount: [assetAmountExtendedHasNftOnchainMetadata] :: AmountExtended -> Bool
+ Blockfrost.Types.Shared.Amount: [assetAmountExtendedValue] :: AmountExtended -> SomeDiscrete
+ Blockfrost.Types.Shared.BlockIndex: [blockIndexHeight] :: BlockIndex -> Integer
+ Blockfrost.Types.Shared.BlockIndex: [blockIndexIndex] :: BlockIndex -> Maybe Integer
+ Blockfrost.Types.Shared.DRepId: DRepIdBech32 :: Text -> DRepIdBech32
+ Blockfrost.Types.Shared.DRepId: DRepIdHex :: Text -> DRepIdHex
+ Blockfrost.Types.Shared.DRepId: DRepId_Bech32 :: DRepIdBech32 -> DRepId
+ Blockfrost.Types.Shared.DRepId: DRepId_Hex :: DRepIdHex -> DRepId
+ Blockfrost.Types.Shared.DRepId: data DRepId
+ Blockfrost.Types.Shared.DRepId: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Shared.DRepId.DRepId
+ Blockfrost.Types.Shared.DRepId: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Shared.DRepId.DRepIdBech32
+ Blockfrost.Types.Shared.DRepId: instance Data.Aeson.Types.FromJSON.FromJSON Blockfrost.Types.Shared.DRepId.DRepIdHex
+ Blockfrost.Types.Shared.DRepId: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Shared.DRepId.DRepId
+ Blockfrost.Types.Shared.DRepId: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Shared.DRepId.DRepIdBech32
+ Blockfrost.Types.Shared.DRepId: instance Data.Aeson.Types.ToJSON.ToJSON Blockfrost.Types.Shared.DRepId.DRepIdHex
+ Blockfrost.Types.Shared.DRepId: instance Data.String.IsString Blockfrost.Types.Shared.DRepId.DRepIdBech32
+ Blockfrost.Types.Shared.DRepId: instance Data.String.IsString Blockfrost.Types.Shared.DRepId.DRepIdHex
+ Blockfrost.Types.Shared.DRepId: instance GHC.Classes.Eq Blockfrost.Types.Shared.DRepId.DRepId
+ Blockfrost.Types.Shared.DRepId: instance GHC.Classes.Eq Blockfrost.Types.Shared.DRepId.DRepIdBech32
+ Blockfrost.Types.Shared.DRepId: instance GHC.Classes.Eq Blockfrost.Types.Shared.DRepId.DRepIdHex
+ Blockfrost.Types.Shared.DRepId: instance GHC.Generics.Generic Blockfrost.Types.Shared.DRepId.DRepId
+ Blockfrost.Types.Shared.DRepId: instance GHC.Generics.Generic Blockfrost.Types.Shared.DRepId.DRepIdBech32
+ Blockfrost.Types.Shared.DRepId: instance GHC.Generics.Generic Blockfrost.Types.Shared.DRepId.DRepIdHex
+ Blockfrost.Types.Shared.DRepId: instance GHC.Show.Show Blockfrost.Types.Shared.DRepId.DRepId
+ Blockfrost.Types.Shared.DRepId: instance GHC.Show.Show Blockfrost.Types.Shared.DRepId.DRepIdBech32
+ Blockfrost.Types.Shared.DRepId: instance GHC.Show.Show Blockfrost.Types.Shared.DRepId.DRepIdHex
+ Blockfrost.Types.Shared.DRepId: instance Servant.Docs.Internal.ToCapture (Servant.API.Capture.Capture "drep_id" Blockfrost.Types.Shared.DRepId.DRepId)
+ Blockfrost.Types.Shared.DRepId: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Shared.DRepId.DRepId
+ Blockfrost.Types.Shared.DRepId: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Shared.DRepId.DRepIdBech32
+ Blockfrost.Types.Shared.DRepId: instance Servant.Docs.Internal.ToSample Blockfrost.Types.Shared.DRepId.DRepIdHex
+ Blockfrost.Types.Shared.DRepId: instance Web.Internal.HttpApiData.FromHttpApiData Blockfrost.Types.Shared.DRepId.DRepId
+ Blockfrost.Types.Shared.DRepId: instance Web.Internal.HttpApiData.FromHttpApiData Blockfrost.Types.Shared.DRepId.DRepIdBech32
+ Blockfrost.Types.Shared.DRepId: instance Web.Internal.HttpApiData.FromHttpApiData Blockfrost.Types.Shared.DRepId.DRepIdHex
+ Blockfrost.Types.Shared.DRepId: instance Web.Internal.HttpApiData.ToHttpApiData Blockfrost.Types.Shared.DRepId.DRepId
+ Blockfrost.Types.Shared.DRepId: instance Web.Internal.HttpApiData.ToHttpApiData Blockfrost.Types.Shared.DRepId.DRepIdBech32
+ Blockfrost.Types.Shared.DRepId: instance Web.Internal.HttpApiData.ToHttpApiData Blockfrost.Types.Shared.DRepId.DRepIdHex
+ Blockfrost.Types.Shared.DRepId: mkDRepIdBech32 :: Text -> DRepIdBech32
+ Blockfrost.Types.Shared.DRepId: mkDRepIdHex :: Text -> DRepIdHex
+ Blockfrost.Types.Shared.DRepId: newtype DRepIdBech32
+ Blockfrost.Types.Shared.DRepId: newtype DRepIdHex
+ Blockfrost.Types.Shared.DRepId: unDRepIdBech32 :: DRepIdBech32 -> Text
+ Blockfrost.Types.Shared.DRepId: unDRepIdHex :: DRepIdHex -> Text
+ Blockfrost.Types.Shared.DatumHash: [unDatumHash] :: DatumHash -> Text
+ Blockfrost.Types.Shared.ScriptHash: [unScriptHashList] :: ScriptHashList -> [ScriptHash]
+ Blockfrost.Types.Shared.ScriptHash: [unScriptHash] :: ScriptHash -> Text
+ Blockfrost.Types.Shared.TxHash: [unTxHashObject] :: TxHashObject -> Text
+ Blockfrost.Types.Shared.TxHash: [unTxHash] :: TxHash -> Text
- Blockfrost.Auth: data ProjectAuth (auths :: [Type]) val
+ Blockfrost.Auth: data ProjectAuth (auths :: [Type]) (val :: k)
- Blockfrost.Types.Cardano.Accounts: AccountInfo :: Address -> Bool -> Maybe Integer -> Lovelaces -> Lovelaces -> Lovelaces -> Lovelaces -> Lovelaces -> Lovelaces -> Maybe PoolId -> AccountInfo
+ Blockfrost.Types.Cardano.Accounts: AccountInfo :: Address -> Bool -> Maybe Integer -> Lovelaces -> Lovelaces -> Lovelaces -> Lovelaces -> Lovelaces -> Lovelaces -> Maybe PoolId -> Maybe DRepIdBech32 -> AccountInfo
Files
- CHANGELOG.md +6/−0
- blockfrost-api.cabal +5/−1
- src/Blockfrost/API.hs +5/−0
- src/Blockfrost/API/Cardano.hs +2/−0
- src/Blockfrost/API/Cardano/Governance.hs +130/−0
- src/Blockfrost/Lens.hs +14/−0
- src/Blockfrost/Types/Cardano.hs +2/−0
- src/Blockfrost/Types/Cardano/Accounts.hs +2/−0
- src/Blockfrost/Types/Cardano/Governance.hs +684/−0
- src/Blockfrost/Types/Shared.hs +2/−0
- src/Blockfrost/Types/Shared/DRepId.hs +86/−0
- test/Cardano/Accounts.hs +3/−1
- test/Cardano/Governance.hs +836/−0
CHANGELOG.md view
@@ -1,3 +1,9 @@+# Version [0.13.0.0](https://github.com/blockfrost/blockfrost-haskell/compare/api-0.12.2.0...api-0.13.0.0) (2025-06-03)++* Additions+ * Governance support [#77](https://github.com/blockfrost/blockfrost-haskell/pull/77)+ * `AccountInfo` extended with `drepId` field [#77](https://github.com/blockfrost/blockfrost-haskell/pull/77)+ # Version [0.12.2.0](https://github.com/blockfrost/blockfrost-haskell/compare/api-0.12.1.0...api-0.12.2.0) (2025-04-07) * Additions
blockfrost-api.cabal view
@@ -1,6 +1,6 @@ cabal-version: 2.2 name: blockfrost-api-version: 0.12.2.0+version: 0.13.0.0 synopsis: API definitions for blockfrost.io description: Core types and Servant API description homepage: https://github.com/blockfrost/blockfrost-haskell@@ -68,6 +68,7 @@ , Blockfrost.API.Cardano.Assets , Blockfrost.API.Cardano.Blocks , Blockfrost.API.Cardano.Epochs+ , Blockfrost.API.Cardano.Governance , Blockfrost.API.Cardano.Ledger , Blockfrost.API.Cardano.Mempool , Blockfrost.API.Cardano.Metadata@@ -91,6 +92,7 @@ , Blockfrost.Types.Cardano.Blocks , Blockfrost.Types.Cardano.Epochs , Blockfrost.Types.Cardano.Genesis+ , Blockfrost.Types.Cardano.Governance , Blockfrost.Types.Cardano.Mempool , Blockfrost.Types.Cardano.Metadata , Blockfrost.Types.Cardano.Network@@ -108,6 +110,7 @@ , Blockfrost.Types.Shared.Epoch , Blockfrost.Types.Shared.CBOR , Blockfrost.Types.Shared.DatumHash+ , Blockfrost.Types.Shared.DRepId , Blockfrost.Types.Shared.Opts , Blockfrost.Types.Shared.POSIXMillis , Blockfrost.Types.Shared.ScriptHash@@ -153,6 +156,7 @@ , Cardano.Assets , Cardano.Blocks , Cardano.Epochs+ , Cardano.Governance , Cardano.Ledger , Cardano.Metadata , Cardano.Network
src/Blockfrost/API.hs view
@@ -93,6 +93,11 @@ :- "epochs" :> Tag "Cardano » Epochs" :> ToServantApi EpochsAPI+ , _governance+ :: route+ :- "governance"+ :> Tag "Cardano » Governance"+ :> ToServantApi GovernanceAPI , _ledger :: route :- "genesis"
src/Blockfrost/API/Cardano.hs view
@@ -8,6 +8,7 @@ , module Blockfrost.API.Cardano.Assets , module Blockfrost.API.Cardano.Blocks , module Blockfrost.API.Cardano.Epochs+ , module Blockfrost.API.Cardano.Governance , module Blockfrost.API.Cardano.Ledger , module Blockfrost.API.Cardano.Mempool , module Blockfrost.API.Cardano.Metadata@@ -23,6 +24,7 @@ import Blockfrost.API.Cardano.Assets import Blockfrost.API.Cardano.Blocks import Blockfrost.API.Cardano.Epochs+import Blockfrost.API.Cardano.Governance import Blockfrost.API.Cardano.Ledger import Blockfrost.API.Cardano.Mempool import Blockfrost.API.Cardano.Metadata
+ src/Blockfrost/API/Cardano/Governance.hs view
@@ -0,0 +1,130 @@+-- | Governance API endpoints++{-# OPTIONS_HADDOCK hide #-}++module Blockfrost.API.Cardano.Governance+ where++import Servant.API+import Servant.API.Generic+import Servant.Docs (DocCapture (..), ToCapture (..))++import Blockfrost.Types.Cardano.Governance+import Blockfrost.Types.Shared+import Blockfrost.Util.Pagination+import Blockfrost.Util.Sorting++data GovernanceAPI route =+ GovernanceAPI+ {+ _dreps+ :: route+ :- Summary "Delegate Representatives (DReps)"+ :> Description "Return the information about Delegate Representatives (DReps)."+ :> "dreps"+ :> Pagination+ :> Sorting+ :> Get '[JSON] [DRep]+ , _drep+ :: route+ :- Summary "Specific DRep"+ :> Description "DRep information."+ :> "dreps"+ :> Capture "drep_id" DRepId+ :> Get '[JSON] DRepInfo+ , _drepDelegators+ :: route+ :- Summary "DRep delegators"+ :> Description "List of Drep delegators."+ :> "dreps"+ :> Capture "drep_id" DRepId+ :> "delegators"+ :> Pagination+ :> Sorting+ :> Get '[JSON] [DRepDelegator]+ , _drepMetadata+ :: route+ :- Summary "DRep metadata"+ :> Description "DRep metadata information."+ :> "dreps"+ :> Capture "drep_id" DRepId+ :> "metadata"+ :> Get '[JSON] DRepMeta+ , _drepUpdates+ :: route+ :- Summary "DRep updates"+ :> Description "List of certificate updates to the DRep."+ :> "dreps"+ :> Capture "drep_id" DRepId+ :> "updates"+ :> Pagination+ :> Sorting+ :> Get '[JSON] [DRepUpdate]+ , _drepVotes+ :: route+ :- Summary "DRep votes"+ :> Description "History of DReps votes."+ :> "dreps"+ :> Capture "drep_id" DRepId+ :> "votes"+ :> Pagination+ :> Sorting+ :> Get '[JSON] [DRepVote]+ , _proposals+ :: route+ :- Summary "Proposals"+ :> Description "List of proposals."+ :> "proposals"+ :> Pagination+ :> Sorting+ :> Get '[JSON] [Proposal]+ , _proposal+ :: route+ :- Summary "Specific proposal"+ :> Description "Proposal details."+ :> "proposals"+ :> Capture "hash" TxHash+ :> Capture "cert_index" Integer+ :> Get '[JSON] ProposalInfo+ , _paramProposal+ :: route+ :- Summary "Specific parameters proposal"+ :> Description "Parameter proposal details."+ :> "proposals"+ :> Capture "hash" TxHash+ :> Capture "cert_index" Integer+ :> "parameters"+ :> Get '[JSON] ParamProposal+ , _withdrawalProposal+ :: route+ :- Summary "Specific withdrawals proposal"+ :> Description "Withdrawals proposal details."+ :> "proposals"+ :> Capture "hash" TxHash+ :> Capture "cert_index" Integer+ :> "withdrawals"+ :> Get '[JSON] [WithdrawalProposal]+ , _proposalVotes+ :: route+ :- Summary "Proposal votes"+ :> Description "History of proposal votes."+ :> "proposals"+ :> Capture "hash" TxHash+ :> Capture "cert_index" Integer+ :> "votes"+ :> Pagination+ :> Sorting+ :> Get '[JSON] [ProposalVote]+ , _proposalMeta+ :: route+ :- Summary "Specific proposal metadata"+ :> Description "Proposal metadata information."+ :> "proposals"+ :> Capture "hash" TxHash+ :> Capture "cert_index" Integer+ :> "metadata"+ :> Get '[JSON] ProposalMeta+ } deriving (Generic)++instance ToCapture (Capture "cert_index" Integer) where+ toCapture _ = DocCapture "cert_index" "Index of the certificate within the transaction."
src/Blockfrost/Lens.hs view
@@ -45,6 +45,20 @@ makeFields ''Genesis +makeFields ''DRep+makeFields ''DRepInfo+makeFields ''DRepDelegator+makeFields ''DRepMeta+makeFields ''DRepUpdate+makeFields ''DRepVote+makeFields ''Proposal+makeFields ''ProposalInfo+makeFields ''ProposedProtocolParams+makeFields ''ParamProposal+makeFields ''WithdrawalProposal+makeFields ''ProposalVote+makeFields ''ProposalMeta+ makeFields ''MempoolTransaction makeFields ''TransactionInMempool makeFields ''Amount
src/Blockfrost/Types/Cardano.hs view
@@ -7,6 +7,7 @@ , module Blockfrost.Types.Cardano.Blocks , module Blockfrost.Types.Cardano.Epochs , module Blockfrost.Types.Cardano.Genesis+ , module Blockfrost.Types.Cardano.Governance , module Blockfrost.Types.Cardano.Mempool , module Blockfrost.Types.Cardano.Metadata , module Blockfrost.Types.Cardano.Network@@ -22,6 +23,7 @@ import Blockfrost.Types.Cardano.Blocks import Blockfrost.Types.Cardano.Epochs import Blockfrost.Types.Cardano.Genesis+import Blockfrost.Types.Cardano.Governance import Blockfrost.Types.Cardano.Mempool import Blockfrost.Types.Cardano.Metadata import Blockfrost.Types.Cardano.Network
src/Blockfrost/Types/Cardano/Accounts.hs view
@@ -31,6 +31,7 @@ , _accountInfoTreasurySum :: Lovelaces -- ^ Sum of all funds from treasury for the account in the Lovelaces , _accountInfoWithdrawableAmount :: Lovelaces -- ^ Sum of available rewards that haven't been withdrawn yet for the account in the Lovelaces , _accountInfoPoolId :: Maybe PoolId -- ^ Bech32 pool ID that owns the account+ , _accountInfoDrepId :: Maybe DRepIdBech32 -- ^ Bech32 DRep ID to which this account is delegated } deriving stock (Show, Eq, Generic) deriving (FromJSON, ToJSON)@@ -48,6 +49,7 @@ , _accountInfoTreasurySum = 12000000 , _accountInfoWithdrawableAmount = 319154618165 , _accountInfoPoolId = pure "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy"+ , _accountInfoDrepId = pure "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc" } -- | Reward type
+ src/Blockfrost/Types/Cardano/Governance.hs view
@@ -0,0 +1,684 @@+-- | Responses for Cardano governance queries++module Blockfrost.Types.Cardano.Governance+ ( DRep (..)+ , DRepInfo (..)+ , DRepDelegator (..)+ , DRepMeta (..)+ , DRepRegistrationAction (..)+ , DRepUpdate (..)+ , VotingAction (..)+ , DRepVote (..)+ , ProposalAction (..)+ , Proposal (..)+ , ProposalInfo (..)+ , ProposedProtocolParams (..)+ , ParamProposal (..)+ , WithdrawalProposal (..)+ , VoterRole (..)+ , ProposalVote (..)+ , ProposalMeta (..)+ ) where++import Blockfrost.Types.Shared+import Blockfrost.Types.Cardano.Epochs (CostModels, CostModelsRaw)+import Data.Aeson (FromJSON (..), ToJSON (..), Value (..), (.=), object, withText)+import Data.Proxy (Proxy (..))+import Data.Text (Text)+import Deriving.Aeson+import Servant.Docs (ToSample (..), samples, singleSample)++-- | DRep index+data DRep = DRep+ { _dRepDrepId :: DRepIdBech32 -- ^ Bech32 encoded DRep address+ , _dRepHex :: DRepIdHex -- ^ The raw bytes of the DRep+ }+ deriving stock (Show, Eq, Generic)+ deriving (FromJSON, ToJSON)+ via CustomJSON '[FieldLabelModifier '[StripPrefix "_dRep", CamelToSnake]] DRep++instance ToSample DRep where+ toSamples = pure $ samples+ [ DRep+ { _dRepDrepId = "drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn"+ , _dRepHex = "db1bc3c3f99ce68977ceaf27ab4dd917123ef9e73f85c304236eab23"+ }+ , DRep+ { _dRepDrepId = "drep1cxayn4fgy27yaucvhamsvqj3v6835mh3tjjx6x8hdnr4"+ , _dRepHex = "c1ba49d52822bc4ef30cbf77060251668f1a6ef15ca46d18f76cc758"+ }+ ]++-- | Information about a DRep+data DRepInfo = DRepInfo+ { _dRepInfoDrepId :: DRepIdBech32 -- ^ Bech32 encoded DRep address+ , _dRepInfoHex :: DRepIdHex -- ^ The raw bytes of the DRep+ , _dRepInfoAmount :: Lovelaces -- ^ The total amount of voting power this DRep is delegated+ , _dRepInfoHasScript :: Bool -- ^ Flag which indicates if this DRep credentials are a script hash+ , _dRepInfoRetired :: Bool -- ^ Indicates the registration state of the DRep. Set to `True` if the DRep has been deregistered; otherwise, `False`.+ , _dRepInfoExpired :: Bool -- ^ Indicates whether the DRep has been inactive for a consecutive number of epochs (determined by a epoch parameter `drep_activity`)+ , _dRepInfoLastActiveEpoch :: Maybe Epoch -- ^ Epoch of the most recent action - registration, update, deregistration or voting+ }+ deriving stock (Show, Eq, Generic)+ deriving (FromJSON, ToJSON)+ via CustomJSON '[FieldLabelModifier '[StripPrefix "_dRepInfo", CamelToSnake]] DRepInfo++instance ToSample DRepInfo where+ toSamples = pure $ singleSample $ DRepInfo+ { _dRepInfoDrepId = "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc"+ , _dRepInfoHex = "a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d"+ , _dRepInfoAmount = 2000000+ , _dRepInfoHasScript = True+ , _dRepInfoRetired = False+ , _dRepInfoExpired = False+ , _dRepInfoLastActiveEpoch = Just 509+ }++-- | Address delegating to a DRep+data DRepDelegator = DRepDelegator+ { _dRepDelegatorAddress :: Address -- ^ Bech32 encoded stake addresses+ , _dRepDelegatorAmount :: Lovelaces -- ^ Currently delegated amount+ }+ deriving stock (Show, Eq, Generic)+ deriving (FromJSON, ToJSON)+ via CustomJSON '[FieldLabelModifier '[StripPrefix "_dRepDelegator", CamelToSnake]] DRepDelegator++instance ToSample DRepDelegator where+ toSamples = pure $ samples+ [ DRepDelegator+ { _dRepDelegatorAddress = "stake1ux4vspfvwuus9uwyp5p3f0ky7a30jq5j80jxse0fr7pa56sgn8kha"+ , _dRepDelegatorAmount = 1137959159981411+ }+ , DRepDelegator+ { _dRepDelegatorAddress = "stake1uylayej7esmarzd4mk4aru37zh9yz0luj3g9fsvgpfaxulq564r5u"+ , _dRepDelegatorAmount = 16958865648+ }+ , DRepDelegator+ { _dRepDelegatorAddress = "stake1u8lr2pnrgf8f7vrs9lt79hc3sxm8s2w4rwvgpncks3axx6q93d4ck"+ , _dRepDelegatorAmount = 18605647+ }+ ]++-- | DRep metadata+data DRepMeta = DRepMeta+ { _dRepMetaDrepId :: DRepIdBech32 -- ^ Bech32 encoded DRep address+ , _dRepMetaHex :: DRepIdHex -- ^ The raw bytes of the DRep+ , _dRepMetaUrl :: Text -- ^ URL to the drep metadata+ , _dRepMetaHash :: Text -- ^ Hash of the metadata file+ , _dRepMetaJsonMetadata :: Value -- ^ Content of the JSON metadata (validated CIP-119)+ , _dRepMetaBytes :: Text -- ^ Hex-encoded metadata (raw)+ }+ deriving stock (Show, Eq, Generic)+ deriving (FromJSON, ToJSON)+ via CustomJSON '[FieldLabelModifier '[StripPrefix "_dRepMeta", CamelToSnake]] DRepMeta++instance ToSample DRepMeta where+ toSamples = pure $ singleSample $ DRepMeta+ { _dRepMetaDrepId = "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc"+ , _dRepMetaHex = "a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d"+ , _dRepMetaUrl = "https://aaa.xyz/drep.json"+ , _dRepMetaHash = "a14a5ad4f36bddc00f92ddb39fd9ac633c0fd43f8bfa57758f9163d10ef916de"+ , _dRepMetaJsonMetadata = object+ [ "@context" .= object+ [ "CIP100" .= ("https://github.com/cardano-foundation/CIPs/blob/master/CIP-0100/README.md#" :: Text)+ , "CIP119" .= ("https://github.com/cardano-foundation/CIPs/blob/master/CIP-0119/README.md#" :: Text)+ , "hashAlgorithm" .= ("CIP100:hashAlgorithm" :: Text)+ , "body" .= object+ [ "@id" .= ("CIP119:body" :: Text)+ , "@context" .= object+ [ "references" .= object+ [ "@id" .= ("CIP119:references" :: Text)+ , "@container" .= ("@set" :: Text)+ , "@context" .= object+ [ "GovernanceMetadata" .= ("CIP100:GovernanceMetadataReference" :: Text)+ , "Other" .= ("CIP100:OtherReference" :: Text)+ , "label" .= ("CIP100:reference-label" :: Text)+ , "uri" .= ("CIP100:reference-uri" :: Text)+ ]+ ]+ , "paymentAddress" .= ("CIP119:paymentAddress" :: Text)+ , "givenName" .= ("CIP119:givenName" :: Text)+ , "image" .= object+ [ "@id" .= ("CIP119:image" :: Text)+ , "@context" .= object+ [ "ImageObject" .= ("https://schema.org/ImageObject" :: Text) ]+ ]+ , "objectives" .= ("CIP119:objectives" :: Text)+ , "motivations" .= ("CIP119:motivations" :: Text)+ , "qualifications" .= ("CIP119:qualifications" :: Text)+ ]+ ]+ ]+ , "hashAlgorithm" .= ("blake2b-256" :: Text)+ , "body" .= object+ [ "paymentAddress" .= ("addr1q86dnpkva4mm859c8ur7tjxn57zgsu6vg8pdetkdve3fsacnq7twy06u2ev5759vutpjgzfryx0ud8hzedhzerava35qwh3x34" :: Text)+ , "givenName" .= ("Ryan Williams" :: Text)+ , "image" .= object+ [ "@type" .= ("ImageObject" :: Text)+ , "contentUrl" .= ("https://avatars.githubusercontent.com/u/44342099?v=4" :: Text)+ , "sha256" .= ("2a21e4f7b20c8c72f573707b068fb8fc6d8c64d5035c4e18ecae287947fe2b2e" :: Text)+ ]+ , "objectives" .= ("Buy myself an island." :: Text)+ , "motivations" .= ("I really would like to own an island." :: Text)+ , "qualifications" .= ("I have my 100m swimming badge, so I would be qualified to be able to swim around island." :: Text)+ , "references" .=+ [ object+ [ "@type" .= ("Other" :: Text)+ , "label" .= ("A cool island for Ryan" :: Text)+ , "uri" .= ("https://www.google.com/maps/place/World's+only+5th+order+recursive+island/@62.6511465,-97.7946829,15.75z/data=!4m14!1m7!3m6!1s0x5216a167810cee39:0x11431abdfe4c7421!2sWorld's+only+5th+order+recursive+island!8m2!3d62.651114!4d-97.7872244!16s%2Fg%2F11spwk2b6n!3m5!1s0x5216a167810cee39:0x11431abdfe4c7421!8m2!3d62.651114!4d-97.7872244!16s%2Fg%2F11spwk2b6n?authuser=0&entry=ttu" :: Text)+ ]+ , object+ [ "@type" .= ("Link" :: Text)+ , "label" .= ("Ryan's Twitter" :: Text)+ , "uri" .= ("https://twitter.com/Ryun1_" :: Text)+ ]+ ]+ ]+ ]+ , _dRepMetaBytes = "\\x7b0a20202240636f6e74657874223a207b0a2020202022406c616e6775616765223a2022656e2d7573222c0a2020202022434950313030223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130302f524541444d452e6"+ }++-- | DRep registration action+data DRepRegistrationAction+ = DRepRegistrationAction_Registered+ | DRepRegistrationAction_Deregistered+ deriving stock (Show, Eq, Generic)++instance ToJSON DRepRegistrationAction where+ toJSON DRepRegistrationAction_Registered = toJSON ("registered" :: Text)+ toJSON DRepRegistrationAction_Deregistered = toJSON ("deregistered" :: Text)++ toEncoding DRepRegistrationAction_Registered = toEncoding ("registered" :: Text)+ toEncoding DRepRegistrationAction_Deregistered = toEncoding ("deregistered" :: Text)++instance FromJSON DRepRegistrationAction where+ parseJSON = withText "action" $ \case+ "registered" -> pure DRepRegistrationAction_Registered+ "deregistered" -> pure DRepRegistrationAction_Deregistered+ x -> fail ("Expected registration action got " ++ show x)++-- | DRep registration update+data DRepUpdate = DRepUpdate+ { _dRepUpdateTxHash :: TxHash -- ^ Transaction ID+ , _dRepUpdateCertIndex :: Integer -- ^ Index of the certificate within the update transaction+ , _dRepUpdateAction :: DRepRegistrationAction -- ^ DRep registration action+ }+ deriving stock (Show, Eq, Generic)+ deriving (FromJSON, ToJSON)+ via CustomJSON '[FieldLabelModifier '[StripPrefix "_dRepUpdate", CamelToSnake]] DRepUpdate++instance ToSample DRepUpdate where+ toSamples = pure $ samples+ [ DRepUpdate+ { _dRepUpdateTxHash = "f4097fbdb87ab7c7ab44b30d4e2b81713a058488975d1ab8b05c381dd946a393"+ , _dRepUpdateCertIndex = 0+ , _dRepUpdateAction = DRepRegistrationAction_Registered+ }+ , DRepUpdate+ { _dRepUpdateTxHash = "dd3243af975be4b5bedce4e5f5b483b2386d5ad207d05e0289c1df0eb261447e"+ , _dRepUpdateCertIndex = 0+ , _dRepUpdateAction = DRepRegistrationAction_Deregistered+ }+ ]++-- | DRep voting action+data VotingAction+ = VotingAction_Yes+ | VotingAction_No+ | VotingAction_Abstain+ deriving stock (Show, Eq, Generic)++instance ToJSON VotingAction where+ toJSON VotingAction_Yes = toJSON ("yes" :: Text)+ toJSON VotingAction_No = toJSON ("no" :: Text)+ toJSON VotingAction_Abstain = toJSON ("abstain" :: Text)++ toEncoding VotingAction_Yes = toEncoding ("yes" :: Text)+ toEncoding VotingAction_No = toEncoding ("no" :: Text)+ toEncoding VotingAction_Abstain = toEncoding ("abstain" :: Text)++instance FromJSON VotingAction where+ parseJSON = withText "vote" $ \case+ "yes" -> pure VotingAction_Yes+ "no" -> pure VotingAction_No+ "abstain" -> pure VotingAction_Abstain+ x -> fail ("Expected DRep vote but got " ++ show x)++-- | DRep vote+data DRepVote = DRepVote+ { _dRepVoteTxHash :: TxHash -- ^ Transaction ID+ , _dRepVoteCertIndex :: Integer -- ^ Index of the certificate within the update transaction+ , _dRepVoteAction :: VotingAction -- ^ DRep voting action+ }+ deriving stock (Show, Eq, Generic)+ deriving (FromJSON, ToJSON)+ via CustomJSON '[FieldLabelModifier '[StripPrefix "_dRepVote", CamelToSnake, Rename "action" "vote"]] DRepVote++instance ToSample DRepVote where+ toSamples = pure $ samples+ [ DRepVote+ { _dRepVoteTxHash = "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5"+ , _dRepVoteCertIndex = 2+ , _dRepVoteAction = VotingAction_Yes+ }+ , DRepVote+ { _dRepVoteTxHash = "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5"+ , _dRepVoteCertIndex = 3+ , _dRepVoteAction = VotingAction_Abstain+ }+ ]++-- | DRep proposal action+data ProposalAction+ = ProposalAction_HardForkInitiation+ | ProposalAction_NewCommittee+ | ProposalAction_NewConstitution+ | ProposalAction_InfoAction+ | ProposalAction_NoConfidence+ | ProposalAction_ParameterChange+ | ProposalAction_TreasuryWithdrawals+ deriving stock (Show, Eq, Generic)++instance ToJSON ProposalAction where+ toJSON ProposalAction_HardForkInitiation = toJSON ("hard_fork_initiation" :: Text)+ toJSON ProposalAction_NewCommittee = toJSON ("new_committee" :: Text)+ toJSON ProposalAction_NewConstitution = toJSON ("new_constitution" :: Text)+ toJSON ProposalAction_InfoAction = toJSON ("info_action" :: Text)+ toJSON ProposalAction_NoConfidence = toJSON ("no_confidence" :: Text)+ toJSON ProposalAction_ParameterChange = toJSON ("parameter_change" :: Text)+ toJSON ProposalAction_TreasuryWithdrawals = toJSON ("treasury_withdrawals" :: Text)++ toEncoding ProposalAction_HardForkInitiation = toEncoding ("hard_fork_initiation" :: Text)+ toEncoding ProposalAction_NewCommittee = toEncoding ("new_committee" :: Text)+ toEncoding ProposalAction_NewConstitution = toEncoding ("new_constitution" :: Text)+ toEncoding ProposalAction_InfoAction = toEncoding ("info_action" :: Text)+ toEncoding ProposalAction_NoConfidence = toEncoding ("no_confidence" :: Text)+ toEncoding ProposalAction_ParameterChange = toEncoding ("parameter_change" :: Text)+ toEncoding ProposalAction_TreasuryWithdrawals = toEncoding ("treasury_withdrawals" :: Text)++instance FromJSON ProposalAction where+ parseJSON = withText "proposal" $ \case+ "hard_fork_initiation" -> pure ProposalAction_HardForkInitiation+ "new_committee" -> pure ProposalAction_NewCommittee+ "new_constitution" -> pure ProposalAction_NewConstitution+ "info_action" -> pure ProposalAction_InfoAction+ "no_confidence" -> pure ProposalAction_NoConfidence+ "parameter_change" -> pure ProposalAction_ParameterChange+ "treasury_withdrawals" -> pure ProposalAction_TreasuryWithdrawals+ x -> fail ("Expected DRep proposal but got " ++ show x)++-- | DRep proposal+data Proposal = Proposal+ { _dRepProposalTxHash :: TxHash -- ^ Transaction ID+ , _dRepProposalCertIndex :: Integer -- ^ Index of the certificate within the update transaction+ , _dRepProposalAction :: ProposalAction -- ^ DRep proposal type+ }+ deriving stock (Show, Eq, Generic)+ deriving (FromJSON, ToJSON)+ via CustomJSON '[FieldLabelModifier '[StripPrefix "_dRepProposal", CamelToSnake, Rename "action" "governance_type"]] Proposal++instance ToSample Proposal where+ toSamples = pure $ samples+ [ Proposal+ { _dRepProposalTxHash = "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531"+ , _dRepProposalCertIndex = 1+ , _dRepProposalAction = ProposalAction_TreasuryWithdrawals+ }+ , Proposal+ { _dRepProposalTxHash = "71317e951b20aa46e9fbf45a46a6e950d5723a481225519655bf6c60"+ , _dRepProposalCertIndex = 4+ , _dRepProposalAction = ProposalAction_NoConfidence+ }+ ]++-- | Proposal details+data ProposalInfo = ProposalInfo+ { _proposalInfoTxHash :: TxHash -- ^ Transaction ID+ , _proposalInfoCertIndex :: Integer -- ^ Index of the certificate within the proposal transaction+ , _proposalInfoGovernanceType :: ProposalAction -- ^ DRep proposal type+ , _proposalInfoDeposit :: Lovelaces -- ^ The deposit amount paid for this proposal+ , _proposalInfoReturnAddress :: Address -- ^ Bech32 stake address of the reward address to receive the deposit when it is repaid.+ , _proposalInfoGovernanceDescription :: Maybe Value -- ^ An object describing the content of this GovActionProposal in a readable way.+ , _proposalInfoRatifiedEpoch :: Maybe Epoch+ , _proposalInfoEnactedEpoch :: Maybe Epoch+ , _proposalInfoDroppedEpoch :: Maybe Epoch+ , _proposalInfoExpiredEpoch :: Maybe Epoch+ , _proposalInfoExpiration :: Epoch -- ^ The epoch at which this governance action will expire.+ }+ deriving stock (Show, Eq, Generic)+ deriving (FromJSON, ToJSON)+ via CustomJSON '[FieldLabelModifier '[StripPrefix "_proposalInfo", CamelToSnake]] ProposalInfo++instance ToSample ProposalInfo where+ toSamples = pure $ singleSample $ ProposalInfo+ { _proposalInfoTxHash = "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531"+ , _proposalInfoCertIndex = 1+ , _proposalInfoGovernanceType = ProposalAction_TreasuryWithdrawals+ , _proposalInfoDeposit = 12000+ , _proposalInfoReturnAddress = "stake_test1urd3hs7rlxwwdzthe6hj026dmyt3y0heuulctscyydh2kgck6nkmz"+ , _proposalInfoGovernanceDescription = Just $ object [ "tag" .= ("InfoAction" :: Text) ]+ , _proposalInfoRatifiedEpoch = Nothing+ , _proposalInfoEnactedEpoch = Just 123+ , _proposalInfoDroppedEpoch = Nothing+ , _proposalInfoExpiredEpoch = Nothing+ , _proposalInfoExpiration = 120+ }++-- | Proposed protocol parameters+--+-- This type is sturcturally similar to @ProtocolParams@ but every field+-- is optional.+data ProposedProtocolParams = ProposedProtocolParams+ { _proposedProtocolParamsEpoch :: Maybe Epoch -- ^ Epoch number+ , _proposedProtocolParamsMinFeeA :: Maybe Integer -- ^ The linear factor for the minimum fee calculation for given epoch+ , _proposedProtocolParamsMinFeeB :: Maybe Integer -- ^ The constant factor for the minimum fee calculation+ , _proposedProtocolParamsMaxBlockSize :: Maybe Integer -- ^ Maximum block body size in Bytes+ , _proposedProtocolParamsMaxTxSize :: Maybe Integer -- ^ Maximum transaction size+ , _proposedProtocolParamsMaxBlockHeaderSize :: Maybe Integer -- ^ Maximum block header size+ , _proposedProtocolParamsKeyDeposit :: Maybe Lovelaces -- ^ The amount of a key registration deposit in Lovelaces+ , _proposedProtocolParamsPoolDeposit :: Maybe Lovelaces -- ^ The amount of a pool registration deposit in Lovelaces+ , _proposedProtocolParamsEMax :: Maybe Integer -- ^ Epoch bound on pool retirement+ , _proposedProtocolParamsNOpt :: Maybe Integer -- ^ Desired number of pools+ , _proposedProtocolParamsA0 :: Maybe Rational -- ^ Pool pledge influence+ , _proposedProtocolParamsRho :: Maybe Rational -- ^ Monetary expansion+ , _proposedProtocolParamsTau :: Maybe Rational -- ^ Treasury expansion+ , _proposedProtocolParamsDecentralisationParam :: Maybe Rational -- ^ Percentage of blocks produced by federated nodes+ , _proposedProtocolParamsExtraEntropy :: Maybe Text -- ^ Seed for extra entropy+ , _proposedProtocolParamsProtocolMajorVer :: Maybe Integer -- ^ Accepted protocol major version+ , _proposedProtocolParamsProtocolMinorVer :: Maybe Integer -- ^ Accepted protocol minor version+ , _proposedProtocolParamsMinUtxo :: Maybe Lovelaces -- ^ Minimum UTXO value+ , _proposedProtocolParamsMinPoolCost :: Maybe Lovelaces -- ^ Minimum stake cost forced on the pool+ , _proposedProtocolParamsNonce :: Maybe Text -- ^ Epoch number only used once+ , _proposedProtocolParamsCostModels :: Maybe CostModels -- ^ Cost models parameters for Plutus Core scripts+ , _proposedProtocolParamsCostModelsRaw :: Maybe CostModelsRaw+ , _proposedProtocolParamsPriceMem :: Maybe Rational -- ^ The per word cost of script memory usage+ , _proposedProtocolParamsPriceStep :: Maybe Rational -- ^ The cost of script execution step usage+ , _proposedProtocolParamsMaxTxExMem :: Maybe Quantity -- ^ The maximum number of execution memory allowed to be used in a single transaction+ , _proposedProtocolParamsMaxTxExSteps :: Maybe Quantity -- ^ The maximum number of execution steps allowed to be used in a single transaction+ , _proposedProtocolParamsMaxBlockExMem :: Maybe Quantity -- ^ The maximum number of execution memory allowed to be used in a single block+ , _proposedProtocolParamsMaxBlockExSteps :: Maybe Quantity -- ^ The maximum number of execution steps allowed to be used in a single block+ , _proposedProtocolParamsMaxValSize :: Maybe Quantity -- ^ The maximum Val size+ , _proposedProtocolParamsCollateralPercent :: Maybe Integer -- ^ The percentage of the transactions fee which must be provided as collateral when including non-native scripts+ , _proposedProtocolParamsMaxCollateralInputs :: Maybe Integer -- ^ The maximum number of collateral inputs allowed in a transaction+ , _proposedProtocolParamsCoinsPerUtxoSize :: Maybe Lovelaces -- ^ The cost per UTxO size. Cost per UTxO *word* for Alozno. Cost per UTxO *byte* for Babbage and later+ , _proposedProtocolParamsCoinsPerUtxoWord :: Maybe Lovelaces -- ^ The cost per UTxO word (DEPRECATED)+ , _proposedProtocolParamsPvtMotionNoConfidence :: Maybe Rational+ , _proposedProtocolParamsPvtCommitteeNormal :: Maybe Rational+ , _proposedProtocolParamsPvtCommitteeNoConfidence :: Maybe Rational+ , _proposedProtocolParamsPvtHardForkInitiation :: Maybe Rational+ , _proposedProtocolParamsPvtppSecurityGroup :: Maybe Rational+ , _proposedProtocolParamsDvtMotionNoConfidence :: Maybe Rational+ , _proposedProtocolParamsDvtCommitteeNormal :: Maybe Rational+ , _proposedProtocolParamsDvtCommitteeNoConfidence :: Maybe Rational+ , _proposedProtocolParamsDvtUpdateToConstitution :: Maybe Rational+ , _proposedProtocolParamsDvtHardForkInitiation :: Maybe Rational+ , _proposedProtocolParamsDvtPPNetworkGroup :: Maybe Rational+ , _proposedProtocolParamsDvtPPEconomicGroup :: Maybe Rational+ , _proposedProtocolParamsDvtPPTechnicalGroup :: Maybe Rational+ , _proposedProtocolParamsDvtPPGovGroup :: Maybe Rational+ , _proposedProtocolParamsDvtTreasuryWithdrawal :: Maybe Rational+ , _proposedProtocolParamsCommitteeMinSize :: Maybe Quantity+ , _proposedProtocolParamsCommitteeMaxTermLength :: Maybe Quantity+ , _proposedProtocolParamsGovActionLifetime :: Maybe Quantity+ , _proposedProtocolParamsGovActionDeposit :: Maybe Lovelaces+ , _proposedProtocolParamsDrepDeposit :: Maybe Lovelaces+ , _proposedProtocolParamsDrepActivity :: Maybe Quantity+ , _proposedProtocolParamsMinFeeRefScriptCostPerByte :: Maybe Rational+ }+ deriving stock (Show, Eq, Generic)+ deriving (FromJSON, ToJSON)+ via CustomJSON '[FieldLabelModifier '[StripPrefix "_proposedProtocolParams", CamelToSnake, Rename "dvt_pp_network_group" "dvt_p_p_network_group", Rename "dvt_pp_economic_group" "dvt_p_p_economic_group", Rename "dvt_pp_technical_group" "dvt_p_p_technical_group", Rename "dvt_pp_gov_group" "dvt_p_p_gov_group"]] ProposedProtocolParams++instance ToSample ProposedProtocolParams where+ toSamples = pure $ singleSample+ ProposedProtocolParams+ { _proposedProtocolParamsEpoch = Just 225+ , _proposedProtocolParamsMinFeeA = Just 44+ , _proposedProtocolParamsMinFeeB = Just 155381+ , _proposedProtocolParamsMaxBlockSize = Just 65536+ , _proposedProtocolParamsMaxTxSize = Just 16384+ , _proposedProtocolParamsMaxBlockHeaderSize = Just 1100+ , _proposedProtocolParamsKeyDeposit = Just 2000000+ , _proposedProtocolParamsPoolDeposit = Just 500000000+ , _proposedProtocolParamsEMax = Just 18+ , _proposedProtocolParamsNOpt = Just 150+ , _proposedProtocolParamsA0 = Just 0.3+ , _proposedProtocolParamsRho = Just 0.003+ , _proposedProtocolParamsTau = Just 0.2+ , _proposedProtocolParamsDecentralisationParam = Just 0.5+ , _proposedProtocolParamsExtraEntropy = Nothing+ , _proposedProtocolParamsProtocolMajorVer = Just 2+ , _proposedProtocolParamsProtocolMinorVer = Just 0+ , _proposedProtocolParamsMinUtxo = Just 1000000+ , _proposedProtocolParamsMinPoolCost = Just 340000000+ , _proposedProtocolParamsNonce = Just "1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81"+ , _proposedProtocolParamsCostModels =+ case toSamples (Proxy :: Proxy CostModels) of+ [(_, pp)] -> Just pp+ _ -> error "Absurd"+ , _proposedProtocolParamsCostModelsRaw =+ case toSamples (Proxy :: Proxy CostModelsRaw) of+ [(_, pp)] -> Just pp+ _ -> error "Absurd"+ , _proposedProtocolParamsPriceMem = Just 0.0577+ , _proposedProtocolParamsPriceStep = Just 0.0000721+ , _proposedProtocolParamsMaxTxExMem = Just 10000000+ , _proposedProtocolParamsMaxTxExSteps = Just 10000000000+ , _proposedProtocolParamsMaxBlockExMem = Just 50000000+ , _proposedProtocolParamsMaxBlockExSteps = Just 40000000000+ , _proposedProtocolParamsMaxValSize = Just 5000+ , _proposedProtocolParamsCollateralPercent = Just 150+ , _proposedProtocolParamsMaxCollateralInputs = Just 3+ , _proposedProtocolParamsCoinsPerUtxoSize = Just 34482+ , _proposedProtocolParamsCoinsPerUtxoWord = Just 34482+ , _proposedProtocolParamsPvtMotionNoConfidence = Just 0.51+ , _proposedProtocolParamsPvtCommitteeNormal = Just 0.51+ , _proposedProtocolParamsPvtCommitteeNoConfidence = Just 0.51+ , _proposedProtocolParamsPvtHardForkInitiation = Just 0.51+ , _proposedProtocolParamsPvtppSecurityGroup = Just 0.51+ , _proposedProtocolParamsDvtMotionNoConfidence = Just 0.67+ , _proposedProtocolParamsDvtCommitteeNormal = Just 0.67+ , _proposedProtocolParamsDvtCommitteeNoConfidence = Just 0.6+ , _proposedProtocolParamsDvtUpdateToConstitution = Just 0.75+ , _proposedProtocolParamsDvtHardForkInitiation = Just 0.6+ , _proposedProtocolParamsDvtPPNetworkGroup = Just 0.67+ , _proposedProtocolParamsDvtPPEconomicGroup = Just 0.67+ , _proposedProtocolParamsDvtPPTechnicalGroup = Just 0.67+ , _proposedProtocolParamsDvtPPGovGroup = Just 0.75+ , _proposedProtocolParamsDvtTreasuryWithdrawal = Just 0.67+ , _proposedProtocolParamsCommitteeMinSize = Just 7+ , _proposedProtocolParamsCommitteeMaxTermLength = Just 146+ , _proposedProtocolParamsGovActionLifetime = Just 6+ , _proposedProtocolParamsGovActionDeposit = Just 100000000000+ , _proposedProtocolParamsDrepDeposit = Just 500000000+ , _proposedProtocolParamsDrepActivity = Just 20+ , _proposedProtocolParamsMinFeeRefScriptCostPerByte = Just 15+ }++-- | Parameter proposal details+data ParamProposal = ParamProposal+ { _paramProposalTxHash :: TxHash -- ^ Transaction ID+ , _paramProposalCertIndex :: Integer -- ^ Index of the certificate within the proposal transaction+ , _paramProposalParameters :: ProposedProtocolParams -- ^ Proposed parameters+ }+ deriving stock (Show, Eq, Generic)+ deriving (FromJSON, ToJSON)+ via CustomJSON '[FieldLabelModifier '[StripPrefix "_paramProposal", CamelToSnake]] ParamProposal++instance ToSample ParamProposal where+ toSamples = pure $ singleSample $ ParamProposal+ { _paramProposalTxHash = "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531"+ , _paramProposalCertIndex = 2+ , _paramProposalParameters =+ case toSamples (Proxy :: Proxy ProposedProtocolParams) of+ [(_, pp)] -> pp+ _ -> error "Absurd"+ }++-- | Withdrawal proposal details+data WithdrawalProposal = WithdrawalProposal+ { _withdrawalProposalStakeAddress :: Address -- ^ Bech32 stake address+ , _withdrawalProposalAmount :: Lovelaces -- ^ Proposed withdrawal amount+ }+ deriving stock (Show, Eq, Generic)+ deriving (FromJSON, ToJSON)+ via CustomJSON '[FieldLabelModifier '[StripPrefix "_withdrawalProposal", CamelToSnake]] WithdrawalProposal++instance ToSample WithdrawalProposal where+ toSamples = pure $ samples+ [ WithdrawalProposal+ { _withdrawalProposalStakeAddress = "stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7"+ , _withdrawalProposalAmount = 454541212442+ }+ , WithdrawalProposal+ { _withdrawalProposalStakeAddress = "stake1xx2g2c9dx2nhhehyrezyxpkstoppcqmu9hk63qgfkccw5rqttygt2"+ , _withdrawalProposalAmount = 97846969+ }+ ]++data VoterRole+ = VoterRole_ConstitutionalCommittee+ | VoterRole_DRep+ | VoterRole_SPO+ deriving stock (Show, Eq, Generic)++instance ToJSON VoterRole where+ toJSON VoterRole_ConstitutionalCommittee = toJSON ("constitutional_committee" :: Text)+ toJSON VoterRole_DRep = toJSON ("drep" :: Text)+ toJSON VoterRole_SPO = toJSON ("spo" :: Text)++ toEncoding VoterRole_ConstitutionalCommittee = toEncoding ("constitutional_committee" :: Text)+ toEncoding VoterRole_DRep = toEncoding ("drep" :: Text)+ toEncoding VoterRole_SPO = toEncoding ("spo" :: Text)++instance FromJSON VoterRole where+ parseJSON = withText "voterRole" $ \case+ "constitutional_committee" -> pure VoterRole_ConstitutionalCommittee+ "drep" -> pure VoterRole_DRep+ "spo" -> pure VoterRole_SPO+ x -> fail ("Expected DRep vote but got " ++ show x)++-- | Proposal vote+data ProposalVote = ProposalVote+ { _proposalVoteTxHash :: TxHash -- ^ Transaction ID+ , _proposalVoteCertIndex :: Integer -- ^ Index of the certificate within the proposal transaction+ , _proposalVoteVoterRole :: VoterRole -- ^ The role of the voter+ , _proposalVoteVoter :: DRepId -- ^ The actual voter+ , _proposalVoteAction :: VotingAction -- ^ Actual voting action+ }+ deriving stock (Show, Eq, Generic)+ deriving (FromJSON, ToJSON)+ via CustomJSON '[FieldLabelModifier '[StripPrefix "_proposalVote", CamelToSnake, Rename "action" "vote"]] ProposalVote++instance ToSample ProposalVote where+ toSamples = pure $ samples+ [ ProposalVote+ { _proposalVoteTxHash = "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5"+ , _proposalVoteCertIndex = 2+ , _proposalVoteVoterRole = VoterRole_DRep+ , _proposalVoteVoter = DRepId_Bech32 "drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn"+ , _proposalVoteAction = VotingAction_Yes+ }+ , ProposalVote+ { _proposalVoteTxHash = "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5"+ , _proposalVoteCertIndex = 3+ , _proposalVoteVoterRole = VoterRole_ConstitutionalCommittee+ , _proposalVoteVoter = DRepId_Hex "53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4"+ , _proposalVoteAction = VotingAction_Abstain+ }+ ]++-- | Prposal metadata+data ProposalMeta = ProposalMeta+ { _proposalMetaTxHash :: TxHash -- ^ Transaction ID+ , _proposalMetaCertIndex :: Integer -- ^ Index of the certificate within the proposal transaction+ , _proposalMetaUrl :: Text -- ^ URL to the proposal metadata+ , _proposalMetaHash :: Text -- ^ Hash of the metadata file+ , _proposalMetaJsonMetadata :: Value -- ^ Content of the JSON metadata (validated CIP-108)+ , _proposalMetaBytes :: Text -- ^ Hex-encoded metadata (raw)+ }+ deriving stock (Show, Eq, Generic)+ deriving (FromJSON, ToJSON)+ via CustomJSON '[FieldLabelModifier '[StripPrefix "_proposalMeta", CamelToSnake]] ProposalMeta++instance ToSample ProposalMeta where+ toSamples = pure $ singleSample $ ProposalMeta+ { _proposalMetaTxHash = "257d75c8ddb0434e9b63e29ebb6241add2b835a307aa33aedba2effe09ed4ec8"+ , _proposalMetaCertIndex = 2+ , _proposalMetaUrl = "https://raw.githubusercontent.com/carloslodelar/proposals/main/pv10.json"+ , _proposalMetaHash = "ffa226f3863aca006172d559cf46bb8b883a47233962ae2fc94c158d7de6fa81"+ , _proposalMetaJsonMetadata = object+ [ "body" .= object+ [ "title" .= ("Hardfork to Protocol version 10" :: Text)+ , "abstract" .= ("Let's have sanchoNet in full governance as soon as possible" :: Text)+ , "rationale" .= ("Let's keep testing stuff" :: Text)+ , "motivation" .= ("PV9 is not as fun as PV10" :: Text)+ , "references" .=+ [ object+ [ "@type" .= ("Other" :: Text)+ , "label" .= ("Hardfork to PV10" :: Text)+ , "uri" .= ("" :: Text)+ ]+ ]+ ]+ , "authors" .=+ [ object+ [ "name" .= ("Carlos" :: Text)+ , "witness" .= object+ [ "publicKey" .= ("7ea09a34aebb13c9841c71397b1cabfec5ddf950405293dee496cac2f437480a" :: Text)+ , "signature" .= ("a476985b4cc0d457f247797611799a6f6a80fc8cb7ec9dcb5a8223888d0618e30de165f3d869c4a0d9107d8a5b612ad7c5e42441907f5b91796f0d7187d64a01" :: Text)+ , "witnessAlgorithm" .= ("ed25519" :: Text)+ ]+ ]+ ]+ , "@context" .= object+ [ "CIP100" .= ("https://github.com/cardano-foundation/CIPs/blob/master/CIP-0100/README.md#" :: Text)+ , "CIP108" .= ("https://github.com/cardano-foundation/CIPs/blob/master/CIP-0108/README.md#" :: Text)+ , "hashAlgorithm" .= ("CIP100:hashAlgorithm" :: Text)+ , "@language" .= ("en-us" :: Text)+ , "body" .= object+ [ "@id" .= ("CIP108:body" :: Text)+ , "@context" .= object+ [ "title" .= ("CIP108:title" :: Text)+ , "abstract" .= ("CIP108:abstract" :: Text)+ , "rationale" .= ("CIP108:rationale" :: Text)+ , "motivation" .= ("CIP108:motivation" :: Text)+ , "references" .= object+ [ "@id" .= ("CIP108:references" :: Text)+ , "@container" .= ("@set" :: Text)+ , "@context" .= object+ [ "uri" .= ("CIP100:reference-uri" :: Text)+ , "Other" .= ("CIP100:OtherReference" :: Text)+ , "label" .= ("CIP100:reference-label" :: Text)+ , "GovernanceMetadata" .= ("CIP100:GovernanceMetadataReference" :: Text)+ , "referenceHash" .= object+ [ "@id" .= ("CIP108:referenceHash" :: Text)+ , "@context" .= object+ [ "hashDigest" .= ("CIP108:hashDigest" :: Text)+ , "hashAlgorithm" .= ("CIP100:hashAlgorithm" :: Text)+ ]+ ]+ ]+ ]+ ]+ ]+ , "authors" .= object+ [ "@id" .= ("CIP100:authors" :: Text)+ , "@container" .= ("@set" :: Text)+ , "@context" .= object+ [ "name" .= ("http://xmlns.com/foaf/0.1/name" :: Text)+ , "witness" .= object+ [ "@id" .= ("CIP100:witness" :: Text)+ , "@context" .= object+ [ "publicKey" .= ("CIP100:publicKey" :: Text)+ , "signature" .= ("CIP100:signature" :: Text)+ , "witnessAlgorithm" .= ("CIP100:witnessAlgorithm" :: Text)+ ]+ ]+ ]+ ]+ ]+ , "hashAlgorithm" .= ("blake2b-256" :: Text)+ ]+ , _proposalMetaBytes = "\\x7b0a20202240636f6e74657874223a207b0a2020202022406c616e6775616765223a2022656e2d7573222c0a2020202022434950313030223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130302f524541444d452e6d6423222c0a2020202022434950313038223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130382f524541444d452e6d6423222c0a202020202268617368416c676f726974686d223a20224349503130303a68617368416c676f726974686d222c0a2020202022626f6479223a207b0a20202020202022406964223a20224349503130383a626f6479222c0a2020202020202240636f6e74657874223a207b0a2020202020202020227265666572656e636573223a207b0a2020202020202020202022406964223a20224349503130383a7265666572656e636573222c0a202020202020202020202240636f6e7461696e6572223a202240736574222c0a202020202020202020202240636f6e74657874223a207b0a20202020202020202020202022476f7665726e616e63654d65746164617461223a20224349503130303a476f7665726e616e63654d657461646174615265666572656e6365222c0a202020202020202020202020224f74686572223a20224349503130303a4f746865725265666572656e6365222c0a202020202020202020202020226c6162656c223a20224349503130303a7265666572656e63652d6c6162656c222c0a20202020202020202020202022757269223a20224349503130303a7265666572656e63652d757269222c0a202020202020202020202020227265666572656e636548617368223a207b0a202020202020202020202020202022406964223a20224349503130383a7265666572656e636548617368222c0a20202020202020202020202020202240636f6e74657874223a207b0a202020202020202020202020202020202268617368446967657374223a20224349503130383a68617368446967657374222c0a202020202020202020202020202020202268617368416c676f726974686d223a20224349503130303a68617368416c676f726974686d220a20202020202020202020202020207d0a2020202020202020202020207d0a202020202020202020207d0a20202020202020207d2c0a2020202020202020227469746c65223a20224349503130383a7469746c65222c0a2020202020202020226162737472616374223a20224349503130383a6162737472616374222c0a2020202020202020226d6f7469766174696f6e223a20224349503130383a6d6f7469766174696f6e222c0a202020202020202022726174696f6e616c65223a20224349503130383a726174696f6e616c65220a2020202020207d0a202020207d2c0a2020202022617574686f7273223a207b0a20202020202022406964223a20224349503130303a617574686f7273222c0a2020202020202240636f6e7461696e6572223a202240736574222c0a2020202020202240636f6e74657874223a207b0a2020202020202020226e616d65223a2022687474703a2f2f786d6c6e732e636f6d2f666f61662f302e312f6e616d65222c0a2020202020202020227769746e657373223a207b0a2020202020202020202022406964223a20224349503130303a7769746e657373222c0a202020202020202020202240636f6e74657874223a207b0a202020202020202020202020227769746e657373416c676f726974686d223a20224349503130303a7769746e657373416c676f726974686d222c0a202020202020202020202020227075626c69634b6579223a20224349503130303a7075626c69634b6579222c0a202020202020202020202020227369676e6174757265223a20224349503130303a7369676e6174757265220a202020202020202020207d0a20202020202020207d0a2020202020207d0a202020207d0a20207d2c0a20202268617368416c676f726974686d223a2022626c616b6532622d323536222c0a202022626f6479223a207b0a20202020227469746c65223a202248617264666f726b20746f2050726f746f636f6c2076657273696f6e203130222c0a20202020226162737472616374223a20224c6574277320686176652073616e63686f4e657420696e2066756c6c20676f7665726e616e636520617320736f6f6e20617320706f737369626c65222c0a20202020226d6f7469766174696f6e223a2022505639206973206e6f742061732066756e2061732050563130222c0a2020202022726174696f6e616c65223a20224c65742773206b6565702074657374696e67207374756666222c0a20202020227265666572656e636573223a205b0a2020202020207b0a2020202020202020224074797065223a20224f74686572222c0a2020202020202020226c6162656c223a202248617264666f726b20746f2050563130222c0a202020202020202022757269223a2022220a2020202020207d0a202020205d0a20207d2c0a202022617574686f7273223a205b0a202020207b0a202020202020226e616d65223a20224361726c6f73222c0a202020202020227769746e657373223a207b0a2020202020202020227769746e657373416c676f726974686d223a202265643235353139222c0a2020202020202020227075626c69634b6579223a202237656130396133346165626231336339383431633731333937623163616266656335646466393530343035323933646565343936636163326634333734383061222c0a2020202020202020227369676e6174757265223a20226134373639383562346363306434353766323437373937363131373939613666366138306663386362376563396463623561383232333838386430363138653330646531363566336438363963346130643931303764386135623631326164376335653432343431393037663562393137393666306437313837643634613031220a2020202020207d0a202020207d0a20205d0a7d"+ }
@@ -9,6 +9,7 @@ , module Blockfrost.Types.Shared.BlockIndex , module Blockfrost.Types.Shared.CBOR , module Blockfrost.Types.Shared.DatumHash+ , module Blockfrost.Types.Shared.DRepId , module Blockfrost.Types.Shared.Epoch , module Blockfrost.Types.Shared.Opts , module Blockfrost.Types.Shared.POSIXMillis@@ -29,6 +30,7 @@ import Blockfrost.Types.Shared.BlockIndex import Blockfrost.Types.Shared.CBOR import Blockfrost.Types.Shared.DatumHash+import Blockfrost.Types.Shared.DRepId import Blockfrost.Types.Shared.Epoch import Blockfrost.Types.Shared.Opts import Blockfrost.Types.Shared.POSIXMillis
@@ -0,0 +1,86 @@+-- | DRep identifier++module Blockfrost.Types.Shared.DRepId+ where++import Data.Aeson (FromJSON (..), ToJSON (..), withText)+import Data.String (IsString (..))+import Data.Text (Text)+import qualified Data.Text+import GHC.Generics+import Servant.API (Capture, FromHttpApiData (..), ToHttpApiData (..))+import Servant.Docs (DocCapture (..), ToCapture (..), ToSample (..), samples)++newtype DRepIdBech32 = DRepIdBech32 Text+ deriving stock (Eq, Show, Generic)+ deriving newtype (FromHttpApiData, ToHttpApiData, FromJSON, ToJSON)++mkDRepIdBech32 :: Text -> DRepIdBech32+mkDRepIdBech32 = DRepIdBech32++unDRepIdBech32 :: DRepIdBech32 -> Text+unDRepIdBech32 (DRepIdBech32 a) = a++instance IsString DRepIdBech32 where+ fromString = mkDRepIdBech32 . Data.Text.pack++instance ToSample DRepIdBech32 where+ toSamples = pure $ samples+ [ "drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn"+ , "drep1cxayn4fgy27yaucvhamsvqj3v6835mh3tjjx6x8hdnr4"+ ]++newtype DRepIdHex = DRepIdHex Text+ deriving stock (Eq, Show, Generic)+ deriving newtype (FromHttpApiData, ToHttpApiData, FromJSON, ToJSON)++mkDRepIdHex :: Text -> DRepIdHex+mkDRepIdHex = DRepIdHex++unDRepIdHex :: DRepIdHex -> Text+unDRepIdHex (DRepIdHex a) = a++instance IsString DRepIdHex where+ fromString = mkDRepIdHex . Data.Text.pack++instance ToSample DRepIdHex where+ toSamples = pure $ samples+ [ "db1bc3c3f99ce68977ceaf27ab4dd917123ef9e73f85c304236eab23"+ , "c1ba49d52822bc4ef30cbf77060251668f1a6ef15ca46d18f76cc758"+ ]++data DRepId+ = DRepId_Bech32 DRepIdBech32+ | DRepId_Hex DRepIdHex+ deriving stock (Eq, Show, Generic)++instance ToJSON DRepId where+ toJSON (DRepId_Bech32 dRepIdBech32) = toJSON dRepIdBech32+ toJSON (DRepId_Hex dRepIdHex) = toJSON dRepIdHex++ toEncoding (DRepId_Bech32 dRepIdBech32) = toEncoding dRepIdBech32+ toEncoding (DRepId_Hex dRepIdHex) = toEncoding dRepIdHex++instance FromJSON DRepId where+ parseJSON = withText "dRepId" $ \case+ x | "drep" `Data.Text.isPrefixOf` x -> pure $ DRepId_Bech32 $ DRepIdBech32 x+ x | otherwise -> pure $ DRepId_Hex $ DRepIdHex x++instance ToHttpApiData DRepId where+ toUrlPiece (DRepId_Bech32 x) = toUrlPiece x+ toUrlPiece (DRepId_Hex x) = toUrlPiece x++instance FromHttpApiData DRepId where+ parseUrlPiece x | "drep" `Data.Text.isPrefixOf` x = Right $ DRepId_Bech32 (DRepIdBech32 x)+ parseUrlPiece x | otherwise = Right $ DRepId_Hex (DRepIdHex x)++instance ToSample DRepId where+ toSamples = pure $ samples+ [ DRepId_Bech32 "drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn"+ , DRepId_Bech32 "drep1cxayn4fgy27yaucvhamsvqj3v6835mh3tjjx6x8hdnr4"+ , DRepId_Hex "db1bc3c3f99ce68977ceaf27ab4dd917123ef9e73f85c304236eab23"+ , DRepId_Hex "c1ba49d52822bc4ef30cbf77060251668f1a6ef15ca46d18f76cc758"+ ]++instance ToCapture (Capture "drep_id" DRepId) where+ toCapture _ = DocCapture "drep_id" "Bech32 or hexadecimal DRep ID."
test/Cardano/Accounts.hs view
@@ -73,7 +73,8 @@ "reserves_sum": "319154618165", "treasury_sum": "12000000", "withdrawable_amount": "319154618165",- "pool_id": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy"+ "pool_id": "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy",+ "drep_id": "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc" } |] @@ -88,6 +89,7 @@ , _accountInfoTreasurySum = 12000000 , _accountInfoWithdrawableAmount = 319154618165 , _accountInfoPoolId = pure "pool1pu5jlj4q9w9jlxeu370a3c9myx47md5j5m2str0naunn2q3lkdy"+ , _accountInfoDrepId = pure "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc" } accountRewardsSample = [r|
+ test/Cardano/Governance.hs view
@@ -0,0 +1,836 @@+{-# LANGUAGE NumericUnderscores #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE QuasiQuotes #-}+{-# LANGUAGE TemplateHaskell #-}++module Cardano.Governance+ where++import Data.Aeson (decode, eitherDecode, encode, object, (.=))+import qualified Data.Map+import Data.Text (Text)+import qualified Money+import Test.Hspec+import Test.Tasty.Hspec+import Text.RawString.QQ++import Blockfrost.Types++spec_epochs :: Spec+spec_epochs = do+ it "parses DReps sample" $ do+ eitherDecode dRepsSample+ `shouldBe`+ Right dRepsExpected++ it "parses DRepInfo sample" $ do+ eitherDecode dRepInfoSample+ `shouldBe`+ Right dRepInfoExpected++ it "parses DRepDelegators sample" $ do+ eitherDecode dRepDelegatorsSample+ `shouldBe`+ Right dRepDelegatorsExpected++ it "parses DRepMeta sample" $ do+ eitherDecode dRepMetaSample+ `shouldBe`+ Right dRepMetaExpected++ it "parses DRepUpdates sample" $ do+ eitherDecode dRepUpdatesSample+ `shouldBe`+ Right dRepUpdatesExpected++ it "parses DRepVotes sample" $ do+ eitherDecode dRepVotesSample+ `shouldBe`+ Right dRepVotesExpected++ it "parses Proposals sample" $ do+ eitherDecode dRepProposalsSample+ `shouldBe`+ Right dRepProposalsExpected++ it "parses ProposalInfo sample" $ do+ eitherDecode proposalInfoSample+ `shouldBe`+ Right proposalInfoExpected++ it "parses ParamProposal sample" $ do+ eitherDecode paramProposalSample+ `shouldBe`+ Right paramProposalExpected++ it "parses WithdrawalProposals sample" $ do+ eitherDecode withdrawalProposalSample+ `shouldBe`+ Right withdrawalProposalExpected++ it "parses ProposalVotes sample" $ do+ eitherDecode proposalVotesSample+ `shouldBe`+ Right proposalVotesExpected++ it "parses ProposalMeta sample" $ do+ eitherDecode proposalMetaSample+ `shouldBe`+ Right proposalMetaExpected++dRepsSample = [r|+[+ {+ "drep_id": "drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn",+ "hex": "db1bc3c3f99ce68977ceaf27ab4dd917123ef9e73f85c304236eab23"+ },+ {+ "drep_id": "drep1cxayn4fgy27yaucvhamsvqj3v6835mh3tjjx6x8hdnr4",+ "hex": "c1ba49d52822bc4ef30cbf77060251668f1a6ef15ca46d18f76cc758"+ }+]+|]++dRepsExpected :: [DRep]+dRepsExpected =+ [ DRep+ { _dRepDrepId = "drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn"+ , _dRepHex = "db1bc3c3f99ce68977ceaf27ab4dd917123ef9e73f85c304236eab23"+ }+ , DRep+ { _dRepDrepId = "drep1cxayn4fgy27yaucvhamsvqj3v6835mh3tjjx6x8hdnr4"+ , _dRepHex = "c1ba49d52822bc4ef30cbf77060251668f1a6ef15ca46d18f76cc758"+ }+ ]++dRepInfoSample = [r|+{+ "drep_id": "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc",+ "hex": "a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d",+ "amount": "2000000",+ "active": true,+ "active_epoch": 420,+ "has_script": true,+ "last_active_epoch": 509,+ "retired": false,+ "expired": false+}+|]++dRepInfoExpected :: DRepInfo+dRepInfoExpected =+ DRepInfo+ { _dRepInfoDrepId = "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc"+ , _dRepInfoHex = "a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d"+ , _dRepInfoAmount = 2000000+ , _dRepInfoHasScript = True+ , _dRepInfoRetired = False+ , _dRepInfoExpired = False+ , _dRepInfoLastActiveEpoch = Just 509+ }+++dRepDelegatorsSample = [r|+[+ {+ "address": "stake1ux4vspfvwuus9uwyp5p3f0ky7a30jq5j80jxse0fr7pa56sgn8kha",+ "amount": "1137959159981411"+ },+ {+ "address": "stake1uylayej7esmarzd4mk4aru37zh9yz0luj3g9fsvgpfaxulq564r5u",+ "amount": "16958865648"+ },+ {+ "address": "stake1u8lr2pnrgf8f7vrs9lt79hc3sxm8s2w4rwvgpncks3axx6q93d4ck",+ "amount": "18605647"+ }+]+|]++dRepDelegatorsExpected :: [DRepDelegator]+dRepDelegatorsExpected =+ [ DRepDelegator+ { _dRepDelegatorAddress = "stake1ux4vspfvwuus9uwyp5p3f0ky7a30jq5j80jxse0fr7pa56sgn8kha"+ , _dRepDelegatorAmount = 1137959159981411+ }+ , DRepDelegator+ { _dRepDelegatorAddress = "stake1uylayej7esmarzd4mk4aru37zh9yz0luj3g9fsvgpfaxulq564r5u"+ , _dRepDelegatorAmount = 16958865648+ }+ , DRepDelegator+ { _dRepDelegatorAddress = "stake1u8lr2pnrgf8f7vrs9lt79hc3sxm8s2w4rwvgpncks3axx6q93d4ck"+ , _dRepDelegatorAmount = 18605647+ }+ ]++dRepMetaSample = [r|+{+ "drep_id": "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc",+ "hex": "a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d",+ "url": "https://aaa.xyz/drep.json",+ "hash": "a14a5ad4f36bddc00f92ddb39fd9ac633c0fd43f8bfa57758f9163d10ef916de",+ "json_metadata": {+ "@context": {+ "CIP100": "https://github.com/cardano-foundation/CIPs/blob/master/CIP-0100/README.md#",+ "CIP119": "https://github.com/cardano-foundation/CIPs/blob/master/CIP-0119/README.md#",+ "hashAlgorithm": "CIP100:hashAlgorithm",+ "body": {+ "@id": "CIP119:body",+ "@context": {+ "references": {+ "@id": "CIP119:references",+ "@container": "@set",+ "@context": {+ "GovernanceMetadata": "CIP100:GovernanceMetadataReference",+ "Other": "CIP100:OtherReference",+ "label": "CIP100:reference-label",+ "uri": "CIP100:reference-uri"+ }+ },+ "paymentAddress": "CIP119:paymentAddress",+ "givenName": "CIP119:givenName",+ "image": {+ "@id": "CIP119:image",+ "@context": {+ "ImageObject": "https://schema.org/ImageObject"+ }+ },+ "objectives": "CIP119:objectives",+ "motivations": "CIP119:motivations",+ "qualifications": "CIP119:qualifications"+ }+ }+ },+ "hashAlgorithm": "blake2b-256",+ "body": {+ "paymentAddress": "addr1q86dnpkva4mm859c8ur7tjxn57zgsu6vg8pdetkdve3fsacnq7twy06u2ev5759vutpjgzfryx0ud8hzedhzerava35qwh3x34",+ "givenName": "Ryan Williams",+ "image": {+ "@type": "ImageObject",+ "contentUrl": "https://avatars.githubusercontent.com/u/44342099?v=4",+ "sha256": "2a21e4f7b20c8c72f573707b068fb8fc6d8c64d5035c4e18ecae287947fe2b2e"+ },+ "objectives": "Buy myself an island.",+ "motivations": "I really would like to own an island.",+ "qualifications": "I have my 100m swimming badge, so I would be qualified to be able to swim around island.",+ "references": [+ {+ "@type": "Other",+ "label": "A cool island for Ryan",+ "uri": "https://www.google.com/maps/place/World's+only+5th+order+recursive+island/@62.6511465,-97.7946829,15.75z/data=!4m14!1m7!3m6!1s0x5216a167810cee39:0x11431abdfe4c7421!2sWorld's+only+5th+order+recursive+island!8m2!3d62.651114!4d-97.7872244!16s%2Fg%2F11spwk2b6n!3m5!1s0x5216a167810cee39:0x11431abdfe4c7421!8m2!3d62.651114!4d-97.7872244!16s%2Fg%2F11spwk2b6n?authuser=0&entry=ttu"+ },+ {+ "@type": "Link",+ "label": "Ryan's Twitter",+ "uri": "https://twitter.com/Ryun1_"+ }+ ]+ }+ },+ "bytes": "\\x7b0a20202240636f6e74657874223a207b0a2020202022406c616e6775616765223a2022656e2d7573222c0a2020202022434950313030223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130302f524541444d452e6"+}+|]++dRepMetaExpected :: DRepMeta+dRepMetaExpected =+ DRepMeta+ { _dRepMetaDrepId = "drep15cfxz9exyn5rx0807zvxfrvslrjqfchrd4d47kv9e0f46uedqtc"+ , _dRepMetaHex = "a61261172624e8333ceff098648d90f8e404e2e36d5b5f5985cbd35d"+ , _dRepMetaUrl = "https://aaa.xyz/drep.json"+ , _dRepMetaHash = "a14a5ad4f36bddc00f92ddb39fd9ac633c0fd43f8bfa57758f9163d10ef916de"+ , _dRepMetaJsonMetadata = object+ [ "@context" .= object+ [ "CIP100" .= ("https://github.com/cardano-foundation/CIPs/blob/master/CIP-0100/README.md#" :: Text)+ , "CIP119" .= ("https://github.com/cardano-foundation/CIPs/blob/master/CIP-0119/README.md#" :: Text)+ , "hashAlgorithm" .= ("CIP100:hashAlgorithm" :: Text)+ , "body" .= object+ [ "@id" .= ("CIP119:body" :: Text)+ , "@context" .= object+ [ "references" .= object+ [ "@id" .= ("CIP119:references" :: Text)+ , "@container" .= ("@set" :: Text)+ , "@context" .= object+ [ "GovernanceMetadata" .= ("CIP100:GovernanceMetadataReference" :: Text)+ , "Other" .= ("CIP100:OtherReference" :: Text)+ , "label" .= ("CIP100:reference-label" :: Text)+ , "uri" .= ("CIP100:reference-uri" :: Text)+ ]+ ]+ , "paymentAddress" .= ("CIP119:paymentAddress" :: Text)+ , "givenName" .= ("CIP119:givenName" :: Text)+ , "image" .= object+ [ "@id" .= ("CIP119:image" :: Text)+ , "@context" .= object+ [ "ImageObject" .= ("https://schema.org/ImageObject" :: Text) ]+ ]+ , "objectives" .= ("CIP119:objectives" :: Text)+ , "motivations" .= ("CIP119:motivations" :: Text)+ , "qualifications" .= ("CIP119:qualifications" :: Text)+ ]+ ]+ ]+ , "hashAlgorithm" .= ("blake2b-256" :: Text)+ , "body" .= object+ [ "paymentAddress" .= ("addr1q86dnpkva4mm859c8ur7tjxn57zgsu6vg8pdetkdve3fsacnq7twy06u2ev5759vutpjgzfryx0ud8hzedhzerava35qwh3x34" :: Text)+ , "givenName" .= ("Ryan Williams" :: Text)+ , "image" .= object+ [ "@type" .= ("ImageObject" :: Text)+ , "contentUrl" .= ("https://avatars.githubusercontent.com/u/44342099?v=4" :: Text)+ , "sha256" .= ("2a21e4f7b20c8c72f573707b068fb8fc6d8c64d5035c4e18ecae287947fe2b2e" :: Text)+ ]+ , "objectives" .= ("Buy myself an island." :: Text)+ , "motivations" .= ("I really would like to own an island." :: Text)+ , "qualifications" .= ("I have my 100m swimming badge, so I would be qualified to be able to swim around island." :: Text)+ , "references" .=+ [ object+ [ "@type" .= ("Other" :: Text)+ , "label" .= ("A cool island for Ryan" :: Text)+ , "uri" .= ("https://www.google.com/maps/place/World's+only+5th+order+recursive+island/@62.6511465,-97.7946829,15.75z/data=!4m14!1m7!3m6!1s0x5216a167810cee39:0x11431abdfe4c7421!2sWorld's+only+5th+order+recursive+island!8m2!3d62.651114!4d-97.7872244!16s%2Fg%2F11spwk2b6n!3m5!1s0x5216a167810cee39:0x11431abdfe4c7421!8m2!3d62.651114!4d-97.7872244!16s%2Fg%2F11spwk2b6n?authuser=0&entry=ttu" :: Text)+ ]+ , object+ [ "@type" .= ("Link" :: Text)+ , "label" .= ("Ryan's Twitter" :: Text)+ , "uri" .= ("https://twitter.com/Ryun1_" :: Text)+ ]+ ]+ ]+ ]+ , _dRepMetaBytes = "\\x7b0a20202240636f6e74657874223a207b0a2020202022406c616e6775616765223a2022656e2d7573222c0a2020202022434950313030223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130302f524541444d452e6"+ }++dRepUpdatesSample = [r|+[+ {+ "tx_hash": "f4097fbdb87ab7c7ab44b30d4e2b81713a058488975d1ab8b05c381dd946a393",+ "cert_index": 0,+ "action": "registered"+ },+ {+ "tx_hash": "dd3243af975be4b5bedce4e5f5b483b2386d5ad207d05e0289c1df0eb261447e",+ "cert_index": 0,+ "action": "deregistered"+ }+]+|]++dRepUpdatesExpected :: [DRepUpdate]+dRepUpdatesExpected =+ [ DRepUpdate+ { _dRepUpdateTxHash = "f4097fbdb87ab7c7ab44b30d4e2b81713a058488975d1ab8b05c381dd946a393"+ , _dRepUpdateCertIndex = 0+ , _dRepUpdateAction = DRepRegistrationAction_Registered+ }+ , DRepUpdate+ { _dRepUpdateTxHash = "dd3243af975be4b5bedce4e5f5b483b2386d5ad207d05e0289c1df0eb261447e"+ , _dRepUpdateCertIndex = 0+ , _dRepUpdateAction = DRepRegistrationAction_Deregistered+ }+ ]++dRepVotesSample = [r|+[+ {+ "tx_hash": "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5",+ "cert_index": 2,+ "vote": "yes"+ },+ {+ "tx_hash": "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5",+ "cert_index": 3,+ "vote": "abstain"+ }+]+|]++dRepVotesExpected :: [DRepVote]+dRepVotesExpected =+ [ DRepVote+ { _dRepVoteTxHash = "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5"+ , _dRepVoteCertIndex = 2+ , _dRepVoteAction = VotingAction_Yes+ }+ , DRepVote+ { _dRepVoteTxHash = "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5"+ , _dRepVoteCertIndex = 3+ , _dRepVoteAction = VotingAction_Abstain+ }+ ]+++dRepProposalsSample = [r|+[+ {+ "tx_hash": "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531",+ "cert_index": 1,+ "governance_type": "treasury_withdrawals"+ },+ {+ "tx_hash": "71317e951b20aa46e9fbf45a46a6e950d5723a481225519655bf6c60",+ "cert_index": 4,+ "governance_type": "no_confidence"+ }+]+|]++dRepProposalsExpected :: [Proposal]+dRepProposalsExpected =+ [ Proposal+ { _dRepProposalTxHash = "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531"+ , _dRepProposalCertIndex = 1+ , _dRepProposalAction = ProposalAction_TreasuryWithdrawals+ }+ , Proposal+ { _dRepProposalTxHash = "71317e951b20aa46e9fbf45a46a6e950d5723a481225519655bf6c60"+ , _dRepProposalCertIndex = 4+ , _dRepProposalAction = ProposalAction_NoConfidence+ }+ ]++proposalInfoSample = [r|+{+ "tx_hash": "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531",+ "cert_index": 1,+ "governance_type": "treasury_withdrawals",+ "deposit": "12000",+ "return_address": "stake_test1urd3hs7rlxwwdzthe6hj026dmyt3y0heuulctscyydh2kgck6nkmz",+ "governance_description":+ {"tag" :"InfoAction" },+ "ratified_epoch": null,+ "enacted_epoch": 123,+ "dropped_epoch": null,+ "expired_epoch": null,+ "expiration": 120+}+|]++proposalInfoExpected :: ProposalInfo+proposalInfoExpected =+ ProposalInfo+ { _proposalInfoTxHash = "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531"+ , _proposalInfoCertIndex = 1+ , _proposalInfoGovernanceType = ProposalAction_TreasuryWithdrawals+ , _proposalInfoDeposit = 12000+ , _proposalInfoReturnAddress = "stake_test1urd3hs7rlxwwdzthe6hj026dmyt3y0heuulctscyydh2kgck6nkmz"+ , _proposalInfoGovernanceDescription = Just $ object [ "tag" .= ("InfoAction" :: Text) ]+ , _proposalInfoRatifiedEpoch = Nothing+ , _proposalInfoEnactedEpoch = Just 123+ , _proposalInfoDroppedEpoch = Nothing+ , _proposalInfoExpiredEpoch = Nothing+ , _proposalInfoExpiration = 120+ }++paramProposalSample = [r|+{+ "tx_hash": "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531",+ "cert_index": 2,+ "parameters": {+ "epoch": 225,+ "min_fee_a": 44,+ "min_fee_b": 155381,+ "max_block_size": 65536,+ "max_tx_size": 16384,+ "max_block_header_size": 1100,+ "key_deposit": "2000000",+ "pool_deposit": "500000000",+ "e_max": 18,+ "n_opt": 150,+ "a0": 0.3,+ "rho": 0.003,+ "tau": 0.2,+ "decentralisation_param": 0.5,+ "extra_entropy": null,+ "protocol_major_ver": 2,+ "protocol_minor_ver": 0,+ "min_utxo": "1000000",+ "min_pool_cost": "340000000",+ "nonce": "1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81",+ "cost_models": {+ "PlutusV1": {+ "addInteger-cpu-arguments-intercept": 197209,+ "addInteger-cpu-arguments-slope": 0+ },+ "PlutusV2":+ {+ "addInteger-cpu-arguments-intercept": 197209,+ "addInteger-cpu-arguments-slope": 0+ }+ },+ "cost_models_raw": {+ "PlutusV1": [+ 197209,+ 0+ ],+ "PlutusV2": [+ 197209,+ 0+ ],+ "PlutusV3": [+ 197209,+ 0+ ]+ },+ "price_mem": 0.0577,+ "price_step": 0.0000721,+ "max_tx_ex_mem": "10000000",+ "max_tx_ex_steps": "10000000000",+ "max_block_ex_mem": "50000000",+ "max_block_ex_steps": "40000000000",+ "max_val_size": "5000",+ "collateral_percent": 150,+ "max_collateral_inputs": 3,+ "coins_per_utxo_size": "34482",+ "coins_per_utxo_word": "34482",+ "pvt_motion_no_confidence": 0.51,+ "pvt_committee_normal": 0.51,+ "pvt_committee_no_confidence": 0.51,+ "pvt_hard_fork_initiation": 0.51,+ "dvt_motion_no_confidence": 0.67,+ "dvt_committee_normal": 0.67,+ "dvt_committee_no_confidence": 0.6,+ "dvt_update_to_constitution": 0.75,+ "dvt_hard_fork_initiation": 0.6,+ "dvt_p_p_network_group": 0.67,+ "dvt_p_p_economic_group": 0.67,+ "dvt_p_p_technical_group": 0.67,+ "dvt_p_p_gov_group": 0.75,+ "dvt_treasury_withdrawal": 0.67,+ "committee_min_size": "7",+ "committee_max_term_length": "146",+ "gov_action_lifetime": "6",+ "gov_action_deposit": "100000000000",+ "drep_deposit": "500000000",+ "drep_activity": "20",+ "pvtpp_security_group": 0.51,+ "min_fee_ref_script_cost_per_byte": 15+ }+}+|]++paramProposalExpected :: ParamProposal+paramProposalExpected =+ ParamProposal+ { _paramProposalTxHash = "2dd15e0ef6e6a17841cb9541c27724072ce4d4b79b91e58432fbaa32d9572531"+ , _paramProposalCertIndex = 2+ , _paramProposalParameters =+ ProposedProtocolParams+ { _proposedProtocolParamsEpoch = Just 225+ , _proposedProtocolParamsMinFeeA = Just 44+ , _proposedProtocolParamsMinFeeB = Just 155381+ , _proposedProtocolParamsMaxBlockSize = Just 65536+ , _proposedProtocolParamsMaxTxSize = Just 16384+ , _proposedProtocolParamsMaxBlockHeaderSize = Just 1100+ , _proposedProtocolParamsKeyDeposit = Just 2000000+ , _proposedProtocolParamsPoolDeposit = Just 500000000+ , _proposedProtocolParamsEMax = Just 18+ , _proposedProtocolParamsNOpt = Just 150+ , _proposedProtocolParamsA0 = Just 0.3+ , _proposedProtocolParamsRho = Just 0.003+ , _proposedProtocolParamsTau = Just 0.2+ , _proposedProtocolParamsDecentralisationParam = Just 0.5+ , _proposedProtocolParamsExtraEntropy = Nothing+ , _proposedProtocolParamsProtocolMajorVer = Just 2+ , _proposedProtocolParamsProtocolMinorVer = Just 0+ , _proposedProtocolParamsMinUtxo = Just 1000000+ , _proposedProtocolParamsMinPoolCost = Just 340000000+ , _proposedProtocolParamsNonce = Just "1a3be38bcbb7911969283716ad7aa550250226b76a61fc51cc9a9a35d9276d81"+ , _proposedProtocolParamsCostModels =+ Just+ $ CostModels+ $ Data.Map.fromList+ [ ( PlutusV1+ , Data.Map.fromList+ [ ("addInteger-cpu-arguments-intercept", 197209)+ , ("addInteger-cpu-arguments-slope", 0)+ ]+ )+ , (PlutusV2+ , Data.Map.fromList+ [ ("addInteger-cpu-arguments-intercept", 197209)+ , ("addInteger-cpu-arguments-slope", 0)+ ]+ )+ ]+ , _proposedProtocolParamsCostModelsRaw =+ Just+ $ CostModelsRaw+ $ Data.Map.fromList+ [ ( PlutusV1+ , [ 197209+ , 0+ ]+ )+ , (PlutusV2+ , [ 197209+ , 0+ ]+ )+ , (PlutusV3+ , [ 197209+ , 0+ ]+ )+ ]+ , _proposedProtocolParamsPriceMem = Just 0.0577+ , _proposedProtocolParamsPriceStep = Just 0.0000721+ , _proposedProtocolParamsMaxTxExMem = Just 10000000+ , _proposedProtocolParamsMaxTxExSteps = Just 10000000000+ , _proposedProtocolParamsMaxBlockExMem = Just 50000000+ , _proposedProtocolParamsMaxBlockExSteps = Just 40000000000+ , _proposedProtocolParamsMaxValSize = Just 5000+ , _proposedProtocolParamsCollateralPercent = Just 150+ , _proposedProtocolParamsMaxCollateralInputs = Just 3+ , _proposedProtocolParamsCoinsPerUtxoSize = Just 34482+ -- deprecated+ , _proposedProtocolParamsCoinsPerUtxoWord = Just 34482+ , _proposedProtocolParamsPvtMotionNoConfidence = Just 0.51+ , _proposedProtocolParamsPvtCommitteeNormal = Just 0.51+ , _proposedProtocolParamsPvtCommitteeNoConfidence = Just 0.51+ , _proposedProtocolParamsPvtHardForkInitiation = Just 0.51+ , _proposedProtocolParamsPvtppSecurityGroup = Just 0.51+ , _proposedProtocolParamsDvtMotionNoConfidence = Just 0.67+ , _proposedProtocolParamsDvtCommitteeNormal = Just 0.67+ , _proposedProtocolParamsDvtCommitteeNoConfidence = Just 0.6+ , _proposedProtocolParamsDvtUpdateToConstitution = Just 0.75+ , _proposedProtocolParamsDvtHardForkInitiation = Just 0.6+ , _proposedProtocolParamsDvtPPNetworkGroup = Just 0.67+ , _proposedProtocolParamsDvtPPEconomicGroup = Just 0.67+ , _proposedProtocolParamsDvtPPTechnicalGroup = Just 0.67+ , _proposedProtocolParamsDvtPPGovGroup = Just 0.75+ , _proposedProtocolParamsDvtTreasuryWithdrawal = Just 0.67+ , _proposedProtocolParamsCommitteeMinSize = Just 7+ , _proposedProtocolParamsCommitteeMaxTermLength = Just 146+ , _proposedProtocolParamsGovActionLifetime = Just 6+ , _proposedProtocolParamsGovActionDeposit = Just 100000000000+ , _proposedProtocolParamsDrepDeposit = Just 500000000+ , _proposedProtocolParamsDrepActivity = Just 20+ , _proposedProtocolParamsMinFeeRefScriptCostPerByte = Just 15+ }+ }++withdrawalProposalSample = [r|+[+ {+ "stake_address": "stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7",+ "amount": "454541212442"+ },+ {+ "stake_address": "stake1xx2g2c9dx2nhhehyrezyxpkstoppcqmu9hk63qgfkccw5rqttygt2",+ "amount": "97846969"+ }+]+|]++withdrawalProposalExpected :: [WithdrawalProposal]+withdrawalProposalExpected =+ [ WithdrawalProposal+ { _withdrawalProposalStakeAddress = "stake1ux3g2c9dx2nhhehyrezyxpkstartcqmu9hk63qgfkccw5rqttygt7"+ , _withdrawalProposalAmount = 454541212442+ }+ , WithdrawalProposal+ { _withdrawalProposalStakeAddress = "stake1xx2g2c9dx2nhhehyrezyxpkstoppcqmu9hk63qgfkccw5rqttygt2"+ , _withdrawalProposalAmount = 97846969+ }+ ]++proposalVotesSample = [r|+[+ {+ "tx_hash": "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5",+ "cert_index": 2,+ "voter_role": "drep",+ "voter": "drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn",+ "vote": "yes"+ },+ {+ "tx_hash": "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5",+ "cert_index": 3,+ "voter_role": "constitutional_committee",+ "voter": "53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4",+ "vote": "abstain"+ }+]+|]++proposalVotesExpected :: [ProposalVote]+proposalVotesExpected =+ [ ProposalVote+ { _proposalVoteTxHash = "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5"+ , _proposalVoteCertIndex = 2+ , _proposalVoteVoterRole = VoterRole_DRep+ , _proposalVoteVoter = DRepId_Bech32 "drep1mvdu8slennngja7w4un6knwezufra70887zuxpprd64jxfveahn"+ , _proposalVoteAction = VotingAction_Yes+ }+ , ProposalVote+ { _proposalVoteTxHash = "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5"+ , _proposalVoteCertIndex = 3+ , _proposalVoteVoterRole = VoterRole_ConstitutionalCommittee+ , _proposalVoteVoter = DRepId_Hex "53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4"+ , _proposalVoteAction = VotingAction_Abstain+ }+ ]++proposalMetaSample = [r|+{+ "tx_hash": "257d75c8ddb0434e9b63e29ebb6241add2b835a307aa33aedba2effe09ed4ec8",+ "cert_index": 2,+ "url": "https://raw.githubusercontent.com/carloslodelar/proposals/main/pv10.json",+ "hash": "ffa226f3863aca006172d559cf46bb8b883a47233962ae2fc94c158d7de6fa81",+ "json_metadata": {+ "body": {+ "title": "Hardfork to Protocol version 10",+ "abstract": "Let's have sanchoNet in full governance as soon as possible",+ "rationale": "Let's keep testing stuff",+ "motivation": "PV9 is not as fun as PV10",+ "references": [+ {+ "uri": "",+ "@type": "Other",+ "label": "Hardfork to PV10"+ }+ ]+ },+ "authors": [+ {+ "name": "Carlos",+ "witness": {+ "publicKey": "7ea09a34aebb13c9841c71397b1cabfec5ddf950405293dee496cac2f437480a",+ "signature": "a476985b4cc0d457f247797611799a6f6a80fc8cb7ec9dcb5a8223888d0618e30de165f3d869c4a0d9107d8a5b612ad7c5e42441907f5b91796f0d7187d64a01",+ "witnessAlgorithm": "ed25519"+ }+ }+ ],+ "@context": {+ "body": {+ "@id": "CIP108:body",+ "@context": {+ "title": "CIP108:title",+ "abstract": "CIP108:abstract",+ "rationale": "CIP108:rationale",+ "motivation": "CIP108:motivation",+ "references": {+ "@id": "CIP108:references",+ "@context": {+ "uri": "CIP100:reference-uri",+ "Other": "CIP100:OtherReference",+ "label": "CIP100:reference-label",+ "referenceHash": {+ "@id": "CIP108:referenceHash",+ "@context": {+ "hashDigest": "CIP108:hashDigest",+ "hashAlgorithm": "CIP100:hashAlgorithm"+ }+ },+ "GovernanceMetadata": "CIP100:GovernanceMetadataReference"+ },+ "@container": "@set"+ }+ }+ },+ "CIP100": "https://github.com/cardano-foundation/CIPs/blob/master/CIP-0100/README.md#",+ "CIP108": "https://github.com/cardano-foundation/CIPs/blob/master/CIP-0108/README.md#",+ "authors": {+ "@id": "CIP100:authors",+ "@context": {+ "name": "http://xmlns.com/foaf/0.1/name",+ "witness": {+ "@id": "CIP100:witness",+ "@context": {+ "publicKey": "CIP100:publicKey",+ "signature": "CIP100:signature",+ "witnessAlgorithm": "CIP100:witnessAlgorithm"+ }+ }+ },+ "@container": "@set"+ },+ "@language": "en-us",+ "hashAlgorithm": "CIP100:hashAlgorithm"+ },+ "hashAlgorithm": "blake2b-256"+ },+ "bytes": "\\x7b0a20202240636f6e74657874223a207b0a2020202022406c616e6775616765223a2022656e2d7573222c0a2020202022434950313030223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130302f524541444d452e6d6423222c0a2020202022434950313038223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130382f524541444d452e6d6423222c0a202020202268617368416c676f726974686d223a20224349503130303a68617368416c676f726974686d222c0a2020202022626f6479223a207b0a20202020202022406964223a20224349503130383a626f6479222c0a2020202020202240636f6e74657874223a207b0a2020202020202020227265666572656e636573223a207b0a2020202020202020202022406964223a20224349503130383a7265666572656e636573222c0a202020202020202020202240636f6e7461696e6572223a202240736574222c0a202020202020202020202240636f6e74657874223a207b0a20202020202020202020202022476f7665726e616e63654d65746164617461223a20224349503130303a476f7665726e616e63654d657461646174615265666572656e6365222c0a202020202020202020202020224f74686572223a20224349503130303a4f746865725265666572656e6365222c0a202020202020202020202020226c6162656c223a20224349503130303a7265666572656e63652d6c6162656c222c0a20202020202020202020202022757269223a20224349503130303a7265666572656e63652d757269222c0a202020202020202020202020227265666572656e636548617368223a207b0a202020202020202020202020202022406964223a20224349503130383a7265666572656e636548617368222c0a20202020202020202020202020202240636f6e74657874223a207b0a202020202020202020202020202020202268617368446967657374223a20224349503130383a68617368446967657374222c0a202020202020202020202020202020202268617368416c676f726974686d223a20224349503130303a68617368416c676f726974686d220a20202020202020202020202020207d0a2020202020202020202020207d0a202020202020202020207d0a20202020202020207d2c0a2020202020202020227469746c65223a20224349503130383a7469746c65222c0a2020202020202020226162737472616374223a20224349503130383a6162737472616374222c0a2020202020202020226d6f7469766174696f6e223a20224349503130383a6d6f7469766174696f6e222c0a202020202020202022726174696f6e616c65223a20224349503130383a726174696f6e616c65220a2020202020207d0a202020207d2c0a2020202022617574686f7273223a207b0a20202020202022406964223a20224349503130303a617574686f7273222c0a2020202020202240636f6e7461696e6572223a202240736574222c0a2020202020202240636f6e74657874223a207b0a2020202020202020226e616d65223a2022687474703a2f2f786d6c6e732e636f6d2f666f61662f302e312f6e616d65222c0a2020202020202020227769746e657373223a207b0a2020202020202020202022406964223a20224349503130303a7769746e657373222c0a202020202020202020202240636f6e74657874223a207b0a202020202020202020202020227769746e657373416c676f726974686d223a20224349503130303a7769746e657373416c676f726974686d222c0a202020202020202020202020227075626c69634b6579223a20224349503130303a7075626c69634b6579222c0a202020202020202020202020227369676e6174757265223a20224349503130303a7369676e6174757265220a202020202020202020207d0a20202020202020207d0a2020202020207d0a202020207d0a20207d2c0a20202268617368416c676f726974686d223a2022626c616b6532622d323536222c0a202022626f6479223a207b0a20202020227469746c65223a202248617264666f726b20746f2050726f746f636f6c2076657273696f6e203130222c0a20202020226162737472616374223a20224c6574277320686176652073616e63686f4e657420696e2066756c6c20676f7665726e616e636520617320736f6f6e20617320706f737369626c65222c0a20202020226d6f7469766174696f6e223a2022505639206973206e6f742061732066756e2061732050563130222c0a2020202022726174696f6e616c65223a20224c65742773206b6565702074657374696e67207374756666222c0a20202020227265666572656e636573223a205b0a2020202020207b0a2020202020202020224074797065223a20224f74686572222c0a2020202020202020226c6162656c223a202248617264666f726b20746f2050563130222c0a202020202020202022757269223a2022220a2020202020207d0a202020205d0a20207d2c0a202022617574686f7273223a205b0a202020207b0a202020202020226e616d65223a20224361726c6f73222c0a202020202020227769746e657373223a207b0a2020202020202020227769746e657373416c676f726974686d223a202265643235353139222c0a2020202020202020227075626c69634b6579223a202237656130396133346165626231336339383431633731333937623163616266656335646466393530343035323933646565343936636163326634333734383061222c0a2020202020202020227369676e6174757265223a20226134373639383562346363306434353766323437373937363131373939613666366138306663386362376563396463623561383232333838386430363138653330646531363566336438363963346130643931303764386135623631326164376335653432343431393037663562393137393666306437313837643634613031220a2020202020207d0a202020207d0a20205d0a7d"+}+|]++proposalMetaExpected :: ProposalMeta+proposalMetaExpected =+ ProposalMeta+ { _proposalMetaTxHash = "257d75c8ddb0434e9b63e29ebb6241add2b835a307aa33aedba2effe09ed4ec8"+ , _proposalMetaCertIndex = 2+ , _proposalMetaUrl = "https://raw.githubusercontent.com/carloslodelar/proposals/main/pv10.json"+ , _proposalMetaHash = "ffa226f3863aca006172d559cf46bb8b883a47233962ae2fc94c158d7de6fa81"+ , _proposalMetaJsonMetadata = object+ [ "body" .= object+ [ "title" .= ("Hardfork to Protocol version 10" :: Text)+ , "abstract" .= ("Let's have sanchoNet in full governance as soon as possible" :: Text)+ , "rationale" .= ("Let's keep testing stuff" :: Text)+ , "motivation" .= ("PV9 is not as fun as PV10" :: Text)+ , "references" .=+ [ object+ [ "@type" .= ("Other" :: Text)+ , "label" .= ("Hardfork to PV10" :: Text)+ , "uri" .= ("" :: Text)+ ]+ ]+ ]+ , "authors" .=+ [ object+ [ "name" .= ("Carlos" :: Text)+ , "witness" .= object+ [ "publicKey" .= ("7ea09a34aebb13c9841c71397b1cabfec5ddf950405293dee496cac2f437480a" :: Text)+ , "signature" .= ("a476985b4cc0d457f247797611799a6f6a80fc8cb7ec9dcb5a8223888d0618e30de165f3d869c4a0d9107d8a5b612ad7c5e42441907f5b91796f0d7187d64a01" :: Text)+ , "witnessAlgorithm" .= ("ed25519" :: Text)+ ]+ ]+ ]+ , "@context" .= object+ [ "CIP100" .= ("https://github.com/cardano-foundation/CIPs/blob/master/CIP-0100/README.md#" :: Text)+ , "CIP108" .= ("https://github.com/cardano-foundation/CIPs/blob/master/CIP-0108/README.md#" :: Text)+ , "hashAlgorithm" .= ("CIP100:hashAlgorithm" :: Text)+ , "@language" .= ("en-us" :: Text)+ , "body" .= object+ [ "@id" .= ("CIP108:body" :: Text)+ , "@context" .= object+ [ "title" .= ("CIP108:title" :: Text)+ , "abstract" .= ("CIP108:abstract" :: Text)+ , "rationale" .= ("CIP108:rationale" :: Text)+ , "motivation" .= ("CIP108:motivation" :: Text)+ , "references" .= object+ [ "@id" .= ("CIP108:references" :: Text)+ , "@container" .= ("@set" :: Text)+ , "@context" .= object+ [ "uri" .= ("CIP100:reference-uri" :: Text)+ , "Other" .= ("CIP100:OtherReference" :: Text)+ , "label" .= ("CIP100:reference-label" :: Text)+ , "GovernanceMetadata" .= ("CIP100:GovernanceMetadataReference" :: Text)+ , "referenceHash" .= object+ [ "@id" .= ("CIP108:referenceHash" :: Text)+ , "@context" .= object+ [ "hashDigest" .= ("CIP108:hashDigest" :: Text)+ , "hashAlgorithm" .= ("CIP100:hashAlgorithm" :: Text)+ ]+ ]+ ]+ ]+ ]+ ]+ , "authors" .= object+ [ "@id" .= ("CIP100:authors" :: Text)+ , "@container" .= ("@set" :: Text)+ , "@context" .= object+ [ "name" .= ("http://xmlns.com/foaf/0.1/name" :: Text)+ , "witness" .= object+ [ "@id" .= ("CIP100:witness" :: Text)+ , "@context" .= object+ [ "publicKey" .= ("CIP100:publicKey" :: Text)+ , "signature" .= ("CIP100:signature" :: Text)+ , "witnessAlgorithm" .= ("CIP100:witnessAlgorithm" :: Text)+ ]+ ]+ ]+ ]+ ]+ , "hashAlgorithm" .= ("blake2b-256" :: Text)+ ]+ , _proposalMetaBytes = "\\x7b0a20202240636f6e74657874223a207b0a2020202022406c616e6775616765223a2022656e2d7573222c0a2020202022434950313030223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130302f524541444d452e6d6423222c0a2020202022434950313038223a202268747470733a2f2f6769746875622e636f6d2f63617264616e6f2d666f756e646174696f6e2f434950732f626c6f622f6d61737465722f4349502d303130382f524541444d452e6d6423222c0a202020202268617368416c676f726974686d223a20224349503130303a68617368416c676f726974686d222c0a2020202022626f6479223a207b0a20202020202022406964223a20224349503130383a626f6479222c0a2020202020202240636f6e74657874223a207b0a2020202020202020227265666572656e636573223a207b0a2020202020202020202022406964223a20224349503130383a7265666572656e636573222c0a202020202020202020202240636f6e7461696e6572223a202240736574222c0a202020202020202020202240636f6e74657874223a207b0a20202020202020202020202022476f7665726e616e63654d65746164617461223a20224349503130303a476f7665726e616e63654d657461646174615265666572656e6365222c0a202020202020202020202020224f74686572223a20224349503130303a4f746865725265666572656e6365222c0a202020202020202020202020226c6162656c223a20224349503130303a7265666572656e63652d6c6162656c222c0a20202020202020202020202022757269223a20224349503130303a7265666572656e63652d757269222c0a202020202020202020202020227265666572656e636548617368223a207b0a202020202020202020202020202022406964223a20224349503130383a7265666572656e636548617368222c0a20202020202020202020202020202240636f6e74657874223a207b0a202020202020202020202020202020202268617368446967657374223a20224349503130383a68617368446967657374222c0a202020202020202020202020202020202268617368416c676f726974686d223a20224349503130303a68617368416c676f726974686d220a20202020202020202020202020207d0a2020202020202020202020207d0a202020202020202020207d0a20202020202020207d2c0a2020202020202020227469746c65223a20224349503130383a7469746c65222c0a2020202020202020226162737472616374223a20224349503130383a6162737472616374222c0a2020202020202020226d6f7469766174696f6e223a20224349503130383a6d6f7469766174696f6e222c0a202020202020202022726174696f6e616c65223a20224349503130383a726174696f6e616c65220a2020202020207d0a202020207d2c0a2020202022617574686f7273223a207b0a20202020202022406964223a20224349503130303a617574686f7273222c0a2020202020202240636f6e7461696e6572223a202240736574222c0a2020202020202240636f6e74657874223a207b0a2020202020202020226e616d65223a2022687474703a2f2f786d6c6e732e636f6d2f666f61662f302e312f6e616d65222c0a2020202020202020227769746e657373223a207b0a2020202020202020202022406964223a20224349503130303a7769746e657373222c0a202020202020202020202240636f6e74657874223a207b0a202020202020202020202020227769746e657373416c676f726974686d223a20224349503130303a7769746e657373416c676f726974686d222c0a202020202020202020202020227075626c69634b6579223a20224349503130303a7075626c69634b6579222c0a202020202020202020202020227369676e6174757265223a20224349503130303a7369676e6174757265220a202020202020202020207d0a20202020202020207d0a2020202020207d0a202020207d0a20207d2c0a20202268617368416c676f726974686d223a2022626c616b6532622d323536222c0a202022626f6479223a207b0a20202020227469746c65223a202248617264666f726b20746f2050726f746f636f6c2076657273696f6e203130222c0a20202020226162737472616374223a20224c6574277320686176652073616e63686f4e657420696e2066756c6c20676f7665726e616e636520617320736f6f6e20617320706f737369626c65222c0a20202020226d6f7469766174696f6e223a2022505639206973206e6f742061732066756e2061732050563130222c0a2020202022726174696f6e616c65223a20224c65742773206b6565702074657374696e67207374756666222c0a20202020227265666572656e636573223a205b0a2020202020207b0a2020202020202020224074797065223a20224f74686572222c0a2020202020202020226c6162656c223a202248617264666f726b20746f2050563130222c0a202020202020202022757269223a2022220a2020202020207d0a202020205d0a20207d2c0a202022617574686f7273223a205b0a202020207b0a202020202020226e616d65223a20224361726c6f73222c0a202020202020227769746e657373223a207b0a2020202020202020227769746e657373416c676f726974686d223a202265643235353139222c0a2020202020202020227075626c69634b6579223a202237656130396133346165626231336339383431633731333937623163616266656335646466393530343035323933646565343936636163326634333734383061222c0a2020202020202020227369676e6174757265223a20226134373639383562346363306434353766323437373937363131373939613666366138306663386362376563396463623561383232333838386430363138653330646531363566336438363963346130643931303764386135623631326164376335653432343431393037663562393137393666306437313837643634613031220a2020202020207d0a202020207d0a20205d0a7d"+ }