UNPKG

@htsoft/reactjs-hooks

Version:
82 lines (81 loc) 2.98 kB
import { AskPriceFragment, BidDataPartialFragment, CurrencyShortFragment, CurrentReserveBidFragment, Maybe, NftMediaFragment, PreviousReserveBidFragment, ReserveAuctionPartialFragment } from '../graph-queries/aiza-graph-types'; import { ChainCurrencyType, NFTResultType, ReserveAuctionBidsWithCurrency } from '../fetcher/FetchResultTypes'; import { AuctionStateInfo } from './AuctionState'; import { OpenseaResponse } from './OpenseaUtils'; export declare type PricingInfo = { currency: CurrencyShortFragment; amount: string; prettyAmount: string; computedValue?: PricingInfoValue; }; export declare type BidPricingInfo = { pricing: PricingInfo; }; export declare type PastReserveBid = Omit<PreviousReserveBidFragment, 'amount'> & BidPricingInfo; export declare type CurrentReserveBid = Omit<CurrentReserveBidFragment, 'amount'> & BidPricingInfo; export declare type PerpetualBid = Omit<BidDataPartialFragment, 'currency' | 'amount'> & BidPricingInfo; export declare type PerpetualAsk = Pick<AskPriceFragment, 'id' | 'createdAtTimestamp'> & BidPricingInfo; export declare type PricingInfoValue = { inUSD: string; inETH: string; }; export declare enum AuctionType { NONE = "NONE", PERPETUAL = "PERPETUAL", RESERVE = "RESERVE" } export declare type CommonNFTMediaDataType = { nft: NFTResultType; pricing: { perpetual?: { bids: BidDataPartialFragment[]; ask: Maybe<AskPriceFragment>; }; reserve: Maybe<ReserveAuctionPartialFragment>; }; }; declare type AizaNFTType = Omit<NftMediaFragment, 'currentBids' | 'currentAsk' | 'id' | 'owner' | 'creator'> & { creatorBidSharePercentage: number; ownerBidSharePercentage: number; }; export declare type ZNFTMediaDataType = CommonNFTMediaDataType & { aizaNFT: AizaNFTType; }; export declare type OpenseaNFTMediaDataType = CommonNFTMediaDataType & { openseaInfo: OpenseaResponse; }; export declare type HighestBidType = { pricing: PricingInfo; placedBy: string; placedAt: string; }; export declare type PricingInfoData = { status: AuctionStateInfo; perpetual: { bids: PerpetualBid[]; ask?: PerpetualAsk; highestBid?: HighestBidType; }; reserve?: ReserveAuctionBidsWithCurrency & { current: { highestBid?: HighestBidType; likelyHasEnded: boolean; reserveMet: boolean; }; reservePrice?: PricingInfo; currentBid?: CurrentReserveBid; previousBids: PastReserveBid[]; }; auctionType: AuctionType; }; export declare type ZNFTDataType = Omit<ZNFTMediaDataType, 'pricing'> & { pricing: PricingInfoData; }; export declare type OpenseaNFTDataType = Omit<OpenseaNFTMediaDataType, 'pricing'> & { pricing: PricingInfoData; }; export declare type NFTDataType = ZNFTDataType | OpenseaNFTDataType; export declare type CurrencyLookupType = { [currencyId: string]: ChainCurrencyType; }; export {};