/// import { BN, PublicKey } from '@drift-labs/sdk'; import { JsonObject } from 'cerializr'; import { CompetitionResult, CompetitionRoundSummaryRecord, CompetitionRoundWinnerRecord, LiveCompetitionInfo } from '../types/types'; export declare class SerializableSummaryEvent implements CompetitionRoundSummaryRecord { competition: PublicKey; roundNumber: BN; roundStartTs: BN; roundEndTs: BN; prizePlacement: BN; prizeOddsNumerator: BN; prizeRandomness: BN; prizeRandomnessMax: BN; maxPrizeBucketValue: BN; prizeAmount: BN; prizeValue: BN; prizeBase: BN; numberOfWinners: BN; numberOfCompetitorsSettled: BN; totalScoreSettled: BN; insuranceVaultBalance: BN; protocolIfShares: BN; totalIfShares: BN; ts: BN; txSig: string; slot: number; } export declare class SerializableCompetitionRoundWinner implements CompetitionRoundWinnerRecord { roundNumber: BN; competitor: PublicKey; competition: PublicKey; competitorAuthority: PublicKey; minDraw: BN; maxDraw: BN; winnerPlacement: number; numberOfWinners: number; numberOfCompetitorsSettled: BN; winnerRandomness: BN; totalScoreSettled: BN; prizeRandomness: BN; prizeRandomnessMax: BN; prizeAmount: BN; prizeBase: BN; prizeValue: BN; ts: BN; txSig: string; slot: number; } export declare class SerializableCompetitionResult implements CompetitionResult { startTs: number; endTs: number; roundNumber: number; competitors: BN; totalTickets: BN; summaryEvent: SerializableSummaryEvent; winners: SerializableCompetitionRoundWinner[]; } export declare class SerializableLiveCompetitionInfo implements LiveCompetitionInfo { lastFetchedTs: number; roundNumber: number; endTs: number; totalCompetitors: number; totalTickets: BN; topCompetitors: any; } export declare const Serializer: { Serialize: { SerializableSummaryEvent: (cls: SerializableSummaryEvent) => JsonObject; SerializableCompetitionRoundWinner: (cls: SerializableCompetitionRoundWinner) => JsonObject; SerializableCompetitionResult: (cls: SerializableCompetitionResult) => JsonObject; SerializableLiveCompetitionInfo: (cls: SerializableLiveCompetitionInfo) => JsonObject; }; Deserialize: { SerializableSummaryEvent: (cls: Record) => SerializableSummaryEvent; SerializableCompetitionRoundWinner: (cls: Record) => SerializableCompetitionRoundWinner; SerializableCompetitionResult: (cls: Record) => SerializableCompetitionResult; SerializableLiveCompetitionInfo: (cls: Record) => SerializableLiveCompetitionInfo; }; setDeserializeFromSnakeCase: () => void; setSerializeFromSnakeCase: () => void; };