import { IDisposable , IEvent , IEventProvider , ITelemetryLogger } from "@fluidframework/common-definitions" ; import { IFluidHandleContext , IFluidRouter , IFluidHandle , } from "@fluidframework/core-interfaces" ; import { IAudience , IDeltaManager , ContainerWarning , AttachState , ILoaderOptions , } from "@fluidframework/container-definitions" ; import { IDocumentMessage , IQuorumClients , ISequencedDocumentMessage , } from "@fluidframework/protocol-definitions" ; import { IInboundSignalMessage , IProvideFluidDataStoreRegistry } from "@fluidframework/runtime-definitions" ; import { IChannel } from "." ; export interface IFluidDataStoreRuntimeEvents extends IEvent { ( event , listener ) ; ( event , listener ) ; ( event , listener ) ; ( event , listener ) ; } /**
 * Represents the runtime for the data store. Contains helper functions/state of the data store.
 */ export interface IFluidDataStoreRuntime extends IFluidRouter , IEventProvider < IFluidDataStoreRuntimeEvents > , IDisposable , Partial < IProvideFluidDataStoreRegistry > { readonly id : string ; readonly IFluidHandleContext : IFluidHandleContext ; readonly rootRoutingContext : IFluidHandleContext ; readonly channelsRoutingContext : IFluidHandleContext ; readonly objectsRoutingContext : IFluidHandleContext ; readonly options : ILoaderOptions ; readonly deltaManager : IDeltaManager < ISequencedDocumentMessage , IDocumentMessage > ; readonly clientId : string | undefined ; readonly connected : boolean ; readonly logger : ITelemetryLogger ; /**
     * Indicates the attachment state of the data store to a host service.
     */ readonly attachState : AttachState ; /**
     * Returns the channel with the given id
     */ getChannel ( id ) : Promise < IChannel > ; param id param type createChannel ( id , type ) : IChannel ; /**
     * Bind the channel with the data store runtime. If the runtime
     * is attached then we attach the channel to make it live.
     */ bindChannel ( channel ) : void ; param blob uploadBlob ( blob ) : Promise < IFluidHandle < ArrayBufferLike > > ; param type param content submitSignal ( type , content ) : void ; /**
     * Returns the current quorum.
     */ getQuorum ( ) : IQuorumClients ; /**
     * Returns the current audience.
     */ getAudience ( ) : IAudience ; /**
     * Resolves when a local data store is attached.
     */ waitAttached ( ) : Promise < void > ; deprecated raiseContainerWarning ( warning ) : void ; }