import { TokenType } from './ticketStorage'; import { AbiFieldTypes } from '@tokenscript/attestation/dist/eas/EasTicketAttestation'; import { EthRPCMap } from '../client/interface'; export interface OutletInterface { issuers: OutletIssuerInterface[]; ethRpcMap?: EthRPCMap; skipEasRevokeCheck?: boolean; whitelistDialogWidth?: string; whitelistDialogHeight?: string; whitelistDialogRenderer?: (permissionTxt: string, acceptBtn: string, denyBtn: string) => string; } export interface MultiTokenAuthRequest { [collectionId: string]: { issuerHashes: string[]; tokenIds: (string | number)[]; }; } export interface MultiTokenAuthResult { [collectionId: string]: { [tokenId: string]: ProofResult; }; } export interface OutletIssuerInterface { collectionID: string; title?: string; tokenOrigin?: string; attestationOrigin: string; tokenParser?: any; base64senderPublicKeys: { [key: string]: string; }; base64attestorPubKey: string; whitelist?: string[]; eas?: EasSchemaConfig; } export interface EasSchemaConfig { schemaUid: string; idFields: string[]; fields: EasFieldDefinition[]; } export interface EasFieldDefinition { name: string; label?: string; type: AbiFieldTypes | string; } export interface ProofResult { proof: string; type: TokenType; tokenId?: string | number; }