import type { Signer, Result, Unit, UnknownLink } from '@ucanto/interface' import * as AggregatorInterface from '../src/aggregator/api.js' import * as DealerInterface from '../src/dealer/api.js' import * as StorefrontInterface from '../src/storefront/api.js' import { StorePutError } from '../src/types.js' export interface AggregatorTestEventsContext extends AggregatorInterface.PieceMessageContext, AggregatorInterface.PieceAcceptMessageContext, AggregatorInterface.AggregateOfferMessageContext, AggregatorInterface.PieceInsertEventContext, AggregatorInterface.InclusionInsertEventToUpdateState, AggregatorInterface.InclusionInsertEventToIssuePieceAccept, AggregatorInterface.AggregateInsertEventToAggregateOfferContext, AggregatorInterface.AggregateInsertEventToPieceAcceptQueueContext, AggregatorInterface.BufferMessageContext { id: Signer service: Partial<{ filecoin: Partial piece: Partial aggregate: Partial deal: Partial }> } export interface DealerTestEventsContext extends DealerInterface.AggregateInsertEventContext, DealerInterface.AggregateUpdatedStatusEventContext, DealerInterface.CronContext { id: Signer service: Partial<{ filecoin: Partial piece: Partial aggregate: Partial deal: Partial }> } export interface StorefrontTestEventsContext extends StorefrontInterface.FilecoinSubmitMessageContext, StorefrontInterface.PieceOfferMessageContext, StorefrontInterface.StorefrontClientContext, StorefrontInterface.ClaimsClientContext, StorefrontInterface.CronContext { id: Signer aggregatorId: Signer testContentStore: TestContentStore service: Partial<{ filecoin: Partial piece: Partial aggregate: Partial deal: Partial assert: Partial< import('@web3-storage/content-claims/server/service/api').AssertService > }> } export interface TestContentStore extends StorefrontInterface.ContentStore { /** * Puts a record in the store. */ put: (record: Rec) => Promise> }