• makeRecorderKit is suitable for making a durable RecorderKit which can be held in Exo state.

    Parameters

    • makers: {
          makeDurablePublishKit: ((...args) => GuardedKit<{
              publisher: {
                  fail(reason): void;
                  finish(finalValue): void;
                  publish(value): void;
              };
              subscriber: {
                  getUpdateSince(updateCount): any;
                  subscribeAfter(publishCount?): Promise<any>;
              };
          }>);
          makeRecorder: ((...args) => Guarded<{
              getStorageNode(): DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>;
              getStoragePath(): Promise<string>;
              write(value): Promise<void>;
              writeFinal(value): Promise<void>;
          }>);
      }
      • makeDurablePublishKit: ((...args) => GuardedKit<{
            publisher: {
                fail(reason): void;
                finish(finalValue): void;
                publish(value): void;
            };
            subscriber: {
                getUpdateSince(updateCount): any;
                subscribeAfter(publishCount?): Promise<any>;
            };
        }>)
          • (...args): GuardedKit<{
                publisher: {
                    fail(reason): void;
                    finish(finalValue): void;
                    publish(value): void;
                };
                subscriber: {
                    getUpdateSince(updateCount): any;
                    subscribeAfter(publishCount?): Promise<any>;
                };
            }>
          • Parameters

            • Rest ...args: [options: {
                  valueDurability: undefined | "mandatory";
              }]

            Returns GuardedKit<{
                publisher: {
                    fail(reason): void;
                    finish(finalValue): void;
                    publish(value): void;
                };
                subscriber: {
                    getUpdateSince(updateCount): any;
                    subscribeAfter(publishCount?): Promise<any>;
                };
            }>

      • makeRecorder: ((...args) => Guarded<{
            getStorageNode(): DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>;
            getStoragePath(): Promise<string>;
            write(value): Promise<void>;
            writeFinal(value): Promise<void>;
        }>)
          • (...args): Guarded<{
                getStorageNode(): DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>;
                getStoragePath(): Promise<string>;
                write(value): Promise<void>;
                writeFinal(value): Promise<void>;
            }>
          • Parameters

            • Rest ...args: [publisher: Publisher<unknown>, storageNode: DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>, valueShape: TypedMatcher<unknown>]

            Returns Guarded<{
                getStorageNode(): DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>;
                getStoragePath(): Promise<string>;
                write(value): Promise<void>;
                writeFinal(value): Promise<void>;
            }>

    Returns (<T>(storageNode, valueShape?) => RecorderKit<T>)

      • <T>(storageNode, valueShape?): RecorderKit<T>
      • Type Parameters

        • T

        Parameters

        • storageNode: StorageNode | DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>
        • Optional valueShape: TypedMatcher<T>

        Returns RecorderKit<T>

    See

Generated using TypeDoc