Function defineRecorderKit
- defineRecorderKit(makers): (<T>(storageNode: StorageNode | DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>, valueShape?: TypedPattern<T>) => RecorderKit<T>)
- Parameters- makers: { 
 makeDurablePublishKit: (<T>(options?: {
 valueDurability: undefined | "mandatory";
 }) => PublishKit<T>);
 makeRecorder: ((...args: [publisher: Publisher<unknown>, storageNode: DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>, valueShape: TypedPattern<any>]) => Guarded<{
 getStorageNode(): DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>;
 getStoragePath(): Promise<string>;
 write(value: any): Promise<void>;
 writeFinal(value: any): Promise<void>;
 }>);
 }- makeDurablePublishKit: (<T>(options?: { 
 valueDurability: undefined | "mandatory";
 }) => PublishKit<T>)
- <T>(options?): PublishKit<T>
- Parameters- Optionaloptions: {
 valueDurability: undefined | "mandatory";
 }- valueDurability: undefined | "mandatory"
 
 
 
 
- makeRecorder: ((...args: [publisher: Publisher<unknown>, storageNode: DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>, valueShape: TypedPattern<any>]) => Guarded<{ 
 getStorageNode(): DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>;
 getStoragePath(): Promise<string>;
 write(value: any): Promise<void>;
 writeFinal(value: any): Promise<void>;
 }>)
- (...args): Guarded<{ 
 getStorageNode(): DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>;
 getStoragePath(): Promise<string>;
 write(value: any): Promise<void>;
 writeFinal(value: any): Promise<void>;
 }>
- Parameters- Rest...args: [publisher: Publisher<unknown>, storageNode: DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>, valueShape: TypedPattern<any>]
 
- Returns Guarded<{ 
 getStorageNode(): DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>;
 getStoragePath(): Promise<string>;
 write(value: any): Promise<void>;
 writeFinal(value: any): Promise<void>;
 }>
 
 
 
 
- Returns (<T>(storageNode: StorageNode | DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>, valueShape?: TypedPattern<T>) => RecorderKit<T>)- <T>(storageNode, valueShape?): RecorderKit<T>
- Parameters- storageNode: StorageNode | DataOnly<StorageNode> & RemotableBrand<DataOnly<StorageNode>, StorageNode>
- OptionalvalueShape: TypedPattern<T>
 
 
 
makeRecorderKitis suitable for making a durableRecorderKitwhich can be held in Exo state.See