user.ts 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. import { TimeZone } from '@grafana/data';
  2. export interface OrgUser {
  3. avatarUrl: string;
  4. email: string;
  5. lastSeenAt: string;
  6. lastSeenAtAge: string;
  7. login: string;
  8. orgId: number;
  9. role: string;
  10. userId: number;
  11. }
  12. export interface User {
  13. id: number;
  14. label: string;
  15. avatarUrl: string;
  16. login: string;
  17. email: string;
  18. name: string;
  19. }
  20. export interface Invitee {
  21. code: string;
  22. createdOn: string;
  23. email: string;
  24. emailSent: boolean;
  25. emailSentOn: string;
  26. id: number;
  27. invitedByEmail: string;
  28. invitedByLogin: string;
  29. invitedByName: string;
  30. name: string;
  31. orgId: number;
  32. role: string;
  33. status: string;
  34. url: string;
  35. }
  36. export interface UsersState {
  37. users: OrgUser[];
  38. invitees: Invitee[];
  39. searchQuery: string;
  40. canInvite: boolean;
  41. externalUserMngLinkUrl: string;
  42. externalUserMngLinkName: string;
  43. externalUserMngInfo: string;
  44. hasFetched: boolean;
  45. }
  46. export interface UserState {
  47. orgId: number;
  48. timeZone: TimeZone;
  49. }
  50. export interface UserSession {
  51. id: number;
  52. createdAt: string;
  53. clientIp: string;
  54. isActive: boolean;
  55. seenAt: string;
  56. browser: string;
  57. browserVersion: string;
  58. os: string;
  59. osVersion: string;
  60. device: string;
  61. }