Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function test<T, K extends keyof T>(o: T, propertyValue: T[K], propertyName: K) {
- // ... do something
- }
- interface Car {
- manufacturer: string;
- model: string;
- year: number;
- }
- let taxi: Car = {
- manufacturer: 'Toyota',
- model: 'Camry',
- year: 2014
- };
- test(taxi, 0, 'model');
- export interface Change<T, K extends keyof T = keyof T> {
- timestamp: number;
- field: K;
- value: T[K];
- }
- const change: Change<Car> = {
- timestamp: 1484684700749,
- field: 'model',
- value: 0
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement