interface Point { x: number; y: number; } interface Dimension { width: number; height: number; } interface KeyValue { key: T; value: U; } interface ErrorCode extends Error { code?: unknown; } interface AuthValue { username?: string; password?: string; } interface MinMax { min?: T; max?: T; } type HighResolutionTime = TupleOf;