homebridge-prometheus-exporter/src/std.ts

12 lines
302 B
TypeScript
Raw Normal View History

2022-11-06 13:50:39 +01:00
type Types = 'string' | 'number' | 'boolean' | 'object'
type TypeMap = {
string: string
number: number
boolean: boolean
object: object
}
export function isType<T extends Types>(type: T): (v: unknown) => v is TypeMap[T] {
return (v: unknown): v is TypeMap[T] => typeof v === type
}