@mega-yfue/eufy-sdk / ConditionalKeys
Type Alias: ConditionalKeys<M>
ts
type ConditionalKeys<M> =
| UnverifiedKeys<M>
| { [K in keyof M]: M[K] extends { requires: readonly number[] } ? K : never }[keyof M]
| { [K in keyof M]: M[K] extends { requiresRead: true } ? K : never }[keyof M]
| { [K in keyof M]: M[K] extends { available: unknown } ? K : never }[keyof M];Members whose presence is a runtime fact, so the surface must make a caller check: a write installed only on the devices that prove they speak it (ValueMember.requires), or one whose wire is not captured (ValueMember.unverified).
Type Parameters
M
M extends Members