Function defineERecorderKit
- defineERecorderKit(makers): (<T>(storageNodeP: ERef<StorageNode>, valueShape?: TypedPattern<T>) => EventualRecorderKit<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
Optional
options: {
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>(storageNodeP: ERef<StorageNode>, valueShape?: TypedPattern<T>) => EventualRecorderKit<T>)
- <T>(storageNodeP, valueShape?): EventualRecorderKit<T>
Parameters
- storageNodeP: ERef<StorageNode>
Optional
valueShape: TypedPattern<T>
makeERecorderKit
is for closures that must return asubscriber
synchronously but can defer therecorder
.See