Advertisement
Guest User

Untitled

a guest
Aug 21st, 2019
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.51 KB | None | 0 0
  1. function test<T, K extends keyof T>(o: T, propertyValue: T[K], propertyName: K) {
  2. // ... do something
  3. }
  4.  
  5. interface Car {
  6. manufacturer: string;
  7. model: string;
  8. year: number;
  9. }
  10. let taxi: Car = {
  11. manufacturer: 'Toyota',
  12. model: 'Camry',
  13. year: 2014
  14. };
  15. test(taxi, 0, 'model');
  16.  
  17. export interface Change<T, K extends keyof T = keyof T> {
  18. timestamp: number;
  19. field: K;
  20. value: T[K];
  21. }
  22. const change: Change<Car> = {
  23. timestamp: 1484684700749,
  24. field: 'model',
  25. value: 0
  26. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement