OmitVoid
See source codeUtility type that removes properties with void values from an object type. This is used internally to conditionally require session metadata based on whether SessionMeta extends void.
type OmitVoid<T, KS extends keyof T = keyof T> = {
[K in KS extends any ? (void extends T[KS] ? never : KS) : never]: T[K]
}
Example
type Example = { a: string; b: void; c: number }
type Result = OmitVoid<Example> // { a: string, c: number }
Prev
RemoteTLStoreWithStatusNext
TLCustomMessageHandler