user.ts 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  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. }
  18. export interface Invitee {
  19. code: string;
  20. createdOn: string;
  21. email: string;
  22. emailSent: boolean;
  23. emailSentOn: string;
  24. id: number;
  25. invitedByEmail: string;
  26. invitedByLogin: string;
  27. invitedByName: string;
  28. name: string;
  29. orgId: number;
  30. role: string;
  31. status: string;
  32. url: string;
  33. }
  34. export interface UsersState {
  35. users: OrgUser[];
  36. invitees: Invitee[];
  37. searchQuery: string;
  38. canInvite: boolean;
  39. externalUserMngLinkUrl: string;
  40. externalUserMngLinkName: string;
  41. externalUserMngInfo: string;
  42. hasFetched: boolean;
  43. }
  44. export interface UserState {
  45. orgId: number;
  46. timeZone: TimeZone;
  47. }
  48. export interface UserSession {
  49. id: number;
  50. createdAt: string;
  51. clientIp: string;
  52. isActive: boolean;
  53. seenAt: string;
  54. browser: string;
  55. browserVersion: string;
  56. os: string;
  57. osVersion: string;
  58. device: string;
  59. }