@genesislcap/foundation-user 14.137.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/README.md +43 -0
  2. package/dist/dts/config.d.ts +53 -0
  3. package/dist/dts/config.d.ts.map +1 -0
  4. package/dist/dts/index.d.ts +5 -0
  5. package/dist/dts/index.d.ts.map +1 -0
  6. package/dist/dts/index.federated.d.ts +1 -0
  7. package/dist/dts/index.federated.d.ts.map +1 -0
  8. package/dist/dts/logger.d.ts +5 -0
  9. package/dist/dts/logger.d.ts.map +1 -0
  10. package/dist/dts/tsdoc-metadata.json +11 -0
  11. package/dist/dts/types.d.ts +134 -0
  12. package/dist/dts/types.d.ts.map +1 -0
  13. package/dist/dts/user.d.ts +167 -0
  14. package/dist/dts/user.d.ts.map +1 -0
  15. package/dist/esm/config.js +57 -0
  16. package/dist/esm/index.federated.js +1 -0
  17. package/dist/esm/index.js +4 -0
  18. package/dist/esm/logger.js +5 -0
  19. package/dist/esm/types.js +5 -0
  20. package/dist/esm/user.js +182 -0
  21. package/dist/foundation-user.api.json +3350 -0
  22. package/dist/foundation-user.d.ts +374 -0
  23. package/docs/.gitattributes +2 -0
  24. package/docs/api/foundation-user.defaultuser.actionhistory.md +13 -0
  25. package/docs/api/foundation-user.defaultuser.addauthenticationchangelistener.md +22 -0
  26. package/docs/api/foundation-user.defaultuser.clearactions.md +17 -0
  27. package/docs/api/foundation-user.defaultuser.clearpaths.md +17 -0
  28. package/docs/api/foundation-user.defaultuser.cleartrackinghistory.md +16 -0
  29. package/docs/api/foundation-user.defaultuser.details.md +12 -0
  30. package/docs/api/foundation-user.defaultuser.haspermission.md +22 -0
  31. package/docs/api/foundation-user.defaultuser.hasprofile.md +22 -0
  32. package/docs/api/foundation-user.defaultuser.isadmin.md +16 -0
  33. package/docs/api/foundation-user.defaultuser.isanonymous.md +12 -0
  34. package/docs/api/foundation-user.defaultuser.isauthenticated.md +12 -0
  35. package/docs/api/foundation-user.defaultuser.isbanned.md +16 -0
  36. package/docs/api/foundation-user.defaultuser.lastaction.md +17 -0
  37. package/docs/api/foundation-user.defaultuser.lastpath.md +19 -0
  38. package/docs/api/foundation-user.defaultuser.md +51 -0
  39. package/docs/api/foundation-user.defaultuser.pathhistory.md +13 -0
  40. package/docs/api/foundation-user.defaultuser.permission.md +12 -0
  41. package/docs/api/foundation-user.defaultuser.profile.md +12 -0
  42. package/docs/api/foundation-user.defaultuser.rawproperties.md +18 -0
  43. package/docs/api/foundation-user.defaultuser.set.md +22 -0
  44. package/docs/api/foundation-user.defaultuser.sourceref.md +12 -0
  45. package/docs/api/foundation-user.defaultuser.trackaction.md +24 -0
  46. package/docs/api/foundation-user.defaultuser.trackpath.md +17 -0
  47. package/docs/api/foundation-user.defaultuser.unset.md +16 -0
  48. package/docs/api/foundation-user.defaultuser.userkvs.md +14 -0
  49. package/docs/api/foundation-user.defaultuser.username.md +12 -0
  50. package/docs/api/foundation-user.defaultuserconfig.md +13 -0
  51. package/docs/api/foundation-user.getuser.md +30 -0
  52. package/docs/api/foundation-user.logger.md +12 -0
  53. package/docs/api/foundation-user.md +47 -0
  54. package/docs/api/foundation-user.setuserproperties.details.md +11 -0
  55. package/docs/api/foundation-user.setuserproperties.md +26 -0
  56. package/docs/api/foundation-user.setuserproperties.permission.md +11 -0
  57. package/docs/api/foundation-user.setuserproperties.profile.md +11 -0
  58. package/docs/api/foundation-user.setuserproperties.sourceref.md +11 -0
  59. package/docs/api/foundation-user.setuserproperties.userkvs.md +11 -0
  60. package/docs/api/foundation-user.setuserproperties.username.md +11 -0
  61. package/docs/api/foundation-user.user.addauthenticationchangelistener.md +33 -0
  62. package/docs/api/foundation-user.user.cleartrackinghistory.md +15 -0
  63. package/docs/api/foundation-user.user.details.md +11 -0
  64. package/docs/api/foundation-user.user.haspermission.md +22 -0
  65. package/docs/api/foundation-user.user.hasprofile.md +22 -0
  66. package/docs/api/foundation-user.user.isadmin.md +15 -0
  67. package/docs/api/foundation-user.user.isanonymous.md +11 -0
  68. package/docs/api/foundation-user.user.isauthenticated.md +11 -0
  69. package/docs/api/foundation-user.user.isbanned.md +15 -0
  70. package/docs/api/foundation-user.user.md +56 -0
  71. package/docs/api/foundation-user.user.permission.md +11 -0
  72. package/docs/api/foundation-user.user.profile.md +11 -0
  73. package/docs/api/foundation-user.user.rawproperties.md +18 -0
  74. package/docs/api/foundation-user.user.set.md +22 -0
  75. package/docs/api/foundation-user.user.sourceref.md +11 -0
  76. package/docs/api/foundation-user.user.unset.md +15 -0
  77. package/docs/api/foundation-user.user.userkvs.md +13 -0
  78. package/docs/api/foundation-user.user.username.md +11 -0
  79. package/docs/api/foundation-user.useractionhistory.actionhistory.md +13 -0
  80. package/docs/api/foundation-user.useractionhistory.clearactions.md +17 -0
  81. package/docs/api/foundation-user.useractionhistory.lastaction.md +17 -0
  82. package/docs/api/foundation-user.useractionhistory.md +32 -0
  83. package/docs/api/foundation-user.useractionhistory.trackaction.md +24 -0
  84. package/docs/api/foundation-user.userauthenticationchangeevent.md +18 -0
  85. package/docs/api/foundation-user.userauthenticationchangetype.md +13 -0
  86. package/docs/api/foundation-user.userconfig.md +28 -0
  87. package/docs/api/foundation-user.userconfig.setuser.md +29 -0
  88. package/docs/api/foundation-user.userconfig.trackactionexclusions.md +15 -0
  89. package/docs/api/foundation-user.userconfig.trackpathexclusions.md +15 -0
  90. package/docs/api/foundation-user.userconfig.unsetuser.md +24 -0
  91. package/docs/api/foundation-user.userdetailsproductproperty.md +20 -0
  92. package/docs/api/foundation-user.userdetailsproductproperty.name.md +11 -0
  93. package/docs/api/foundation-user.userdetailsproductproperty.version.md +11 -0
  94. package/docs/api/foundation-user.userdetailsproperty.daystopasswordexpiry.md +11 -0
  95. package/docs/api/foundation-user.userdetailsproperty.failedloginattempts.md +11 -0
  96. package/docs/api/foundation-user.userdetailsproperty.heartbeatintervalsecs.md +11 -0
  97. package/docs/api/foundation-user.userdetailsproperty.lastlogindatetime.md +11 -0
  98. package/docs/api/foundation-user.userdetailsproperty.md +25 -0
  99. package/docs/api/foundation-user.userdetailsproperty.product.md +11 -0
  100. package/docs/api/foundation-user.userdetailsproperty.rejectedloginattempts.md +11 -0
  101. package/docs/api/foundation-user.userdetailsproperty.system.md +11 -0
  102. package/docs/api/foundation-user.userdetailssystemproperty.date.md +11 -0
  103. package/docs/api/foundation-user.userdetailssystemproperty.md +19 -0
  104. package/docs/api/foundation-user.userkvsproperty.md +12 -0
  105. package/docs/api/foundation-user.userpathhistory.clearpaths.md +17 -0
  106. package/docs/api/foundation-user.userpathhistory.lastpath.md +19 -0
  107. package/docs/api/foundation-user.userpathhistory.md +32 -0
  108. package/docs/api/foundation-user.userpathhistory.pathhistory.md +13 -0
  109. package/docs/api/foundation-user.userpathhistory.trackpath.md +17 -0
  110. package/docs/api/foundation-user.userqueueproperties.md +22 -0
  111. package/docs/api/foundation-user.userqueueproperties.updatequeue.md +11 -0
  112. package/docs/api/foundation-user.userqueueproperties.zeromqproxyinboundport.md +11 -0
  113. package/docs/api/foundation-user.userqueueproperties.zeromqproxymodeenabled.md +11 -0
  114. package/docs/api/foundation-user.userqueueproperties.zeromqproxyoutboundport.md +11 -0
  115. package/docs/api/index.md +12 -0
  116. package/docs/api-report.md +277 -0
  117. package/license.txt +46 -0
  118. package/package.json +48 -0
@@ -0,0 +1,13 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [DefaultUser](./foundation-user.defaultuser.md) &gt; [pathHistory](./foundation-user.defaultuser.pathhistory.md)
4
+
5
+ ## DefaultUser.pathHistory property
6
+
7
+ Array of paths that have been tracked.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ pathHistory: string[];
13
+ ```
@@ -0,0 +1,12 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [DefaultUser](./foundation-user.defaultuser.md) &gt; [permission](./foundation-user.defaultuser.permission.md)
4
+
5
+ ## DefaultUser.permission property
6
+
7
+
8
+ **Signature:**
9
+
10
+ ```typescript
11
+ permission: string[];
12
+ ```
@@ -0,0 +1,12 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [DefaultUser](./foundation-user.defaultuser.md) &gt; [profile](./foundation-user.defaultuser.profile.md)
4
+
5
+ ## DefaultUser.profile property
6
+
7
+
8
+ **Signature:**
9
+
10
+ ```typescript
11
+ profile: string[];
12
+ ```
@@ -0,0 +1,18 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [DefaultUser](./foundation-user.defaultuser.md) &gt; [rawProperties](./foundation-user.defaultuser.rawproperties.md)
4
+
5
+ ## DefaultUser.rawProperties property
6
+
7
+ A structuredClone of the raw unmanaged properties used to set the user.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ rawProperties: Partial<SetUserProperties>;
13
+ ```
14
+
15
+ ## Remarks
16
+
17
+ This offers developers an escape hatch to the raw properties. If you feel there's a gap in the User interface based on your application requirements, please raise a request for such properties to be moved onto the interface.
18
+
@@ -0,0 +1,22 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [DefaultUser](./foundation-user.defaultuser.md) &gt; [set](./foundation-user.defaultuser.set.md)
4
+
5
+ ## DefaultUser.set() method
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ set(properties: Partial<SetUserProperties>): User;
11
+ ```
12
+
13
+ ## Parameters
14
+
15
+ | Parameter | Type | Description |
16
+ | --- | --- | --- |
17
+ | properties | Partial&lt;[SetUserProperties](./foundation-user.setuserproperties.md)<!-- -->&gt; | The UserProperties used to populate the User. |
18
+
19
+ **Returns:**
20
+
21
+ [User](./foundation-user.user.md)
22
+
@@ -0,0 +1,12 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [DefaultUser](./foundation-user.defaultuser.md) &gt; [sourceRef](./foundation-user.defaultuser.sourceref.md)
4
+
5
+ ## DefaultUser.sourceRef property
6
+
7
+
8
+ **Signature:**
9
+
10
+ ```typescript
11
+ sourceRef: string;
12
+ ```
@@ -0,0 +1,24 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [DefaultUser](./foundation-user.defaultuser.md) &gt; [trackAction](./foundation-user.defaultuser.trackaction.md)
4
+
5
+ ## DefaultUser.trackAction() method
6
+
7
+ Track an action.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ trackAction<TDetails = unknown>(details: TDetails): void;
13
+ ```
14
+
15
+ ## Parameters
16
+
17
+ | Parameter | Type | Description |
18
+ | --- | --- | --- |
19
+ | details | TDetails | |
20
+
21
+ **Returns:**
22
+
23
+ void
24
+
@@ -0,0 +1,17 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [DefaultUser](./foundation-user.defaultuser.md) &gt; [trackPath](./foundation-user.defaultuser.trackpath.md)
4
+
5
+ ## DefaultUser.trackPath() method
6
+
7
+ Track current path.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ trackPath(): string;
13
+ ```
14
+ **Returns:**
15
+
16
+ string
17
+
@@ -0,0 +1,16 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [DefaultUser](./foundation-user.defaultuser.md) &gt; [unset](./foundation-user.defaultuser.unset.md)
4
+
5
+ ## DefaultUser.unset() method
6
+
7
+
8
+ **Signature:**
9
+
10
+ ```typescript
11
+ unset(): User;
12
+ ```
13
+ **Returns:**
14
+
15
+ [User](./foundation-user.user.md)
16
+
@@ -0,0 +1,14 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [DefaultUser](./foundation-user.defaultuser.md) &gt; [userKVs](./foundation-user.defaultuser.userkvs.md)
4
+
5
+ ## DefaultUser.userKVs property
6
+
7
+
8
+ **Signature:**
9
+
10
+ ```typescript
11
+ userKVs: {
12
+ [key: string]: any;
13
+ };
14
+ ```
@@ -0,0 +1,12 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [DefaultUser](./foundation-user.defaultuser.md) &gt; [userName](./foundation-user.defaultuser.username.md)
4
+
5
+ ## DefaultUser.userName property
6
+
7
+
8
+ **Signature:**
9
+
10
+ ```typescript
11
+ userName: string;
12
+ ```
@@ -0,0 +1,13 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [defaultUserConfig](./foundation-user.defaultuserconfig.md)
4
+
5
+ ## defaultUserConfig variable
6
+
7
+ Default UserConfig DI implementation.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ defaultUserConfig: UserConfig
13
+ ```
@@ -0,0 +1,30 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [getUser](./foundation-user.getuser.md)
4
+
5
+ ## getUser() function
6
+
7
+ Gets User from the DI container.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ export declare function getUser(): User;
13
+ ```
14
+ **Returns:**
15
+
16
+ [User](./foundation-user.user.md)
17
+
18
+ ## Remarks
19
+
20
+ A utility method for host applications that are not using decorators or the DI container.
21
+
22
+ ## Example
23
+
24
+
25
+ ```ts
26
+ import { getUser, User } from '@genesislcap/foundation-user';
27
+ ...
28
+ private user: User = getUser();
29
+ ```
30
+
@@ -0,0 +1,12 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [logger](./foundation-user.logger.md)
4
+
5
+ ## logger variable
6
+
7
+
8
+ **Signature:**
9
+
10
+ ```typescript
11
+ logger: import("@genesislcap/foundation-logger").Logger
12
+ ```
@@ -0,0 +1,47 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md)
4
+
5
+ ## foundation-user package
6
+
7
+ ## Classes
8
+
9
+ | Class | Description |
10
+ | --- | --- |
11
+ | [DefaultUser](./foundation-user.defaultuser.md) | Default User implementation. |
12
+
13
+ ## Functions
14
+
15
+ | Function | Description |
16
+ | --- | --- |
17
+ | [getUser()](./foundation-user.getuser.md) | Gets User from the DI container. |
18
+
19
+ ## Interfaces
20
+
21
+ | Interface | Description |
22
+ | --- | --- |
23
+ | [SetUserProperties](./foundation-user.setuserproperties.md) | SetUserProperties is a partial match of <code>LoginAck</code> from <code>@genesislcap/foundation-auth</code>. |
24
+ | [User](./foundation-user.user.md) | User interface. |
25
+ | [UserActionHistory](./foundation-user.useractionhistory.md) | UserActionHistory. |
26
+ | [UserConfig](./foundation-user.userconfig.md) | UserConfig DI interface. |
27
+ | [UserDetailsProductProperty](./foundation-user.userdetailsproductproperty.md) | |
28
+ | [UserDetailsProperty](./foundation-user.userdetailsproperty.md) | |
29
+ | [UserDetailsSystemProperty](./foundation-user.userdetailssystemproperty.md) | |
30
+ | [UserKVsProperty](./foundation-user.userkvsproperty.md) | |
31
+ | [UserPathHistory](./foundation-user.userpathhistory.md) | UserPathHistory. |
32
+ | [UserQueueProperties](./foundation-user.userqueueproperties.md) | |
33
+
34
+ ## Variables
35
+
36
+ | Variable | Description |
37
+ | --- | --- |
38
+ | [defaultUserConfig](./foundation-user.defaultuserconfig.md) | Default UserConfig DI implementation. |
39
+ | [logger](./foundation-user.logger.md) | |
40
+ | [UserAuthenticationChangeType](./foundation-user.userauthenticationchangetype.md) | UserAuthenticationChangeType. |
41
+
42
+ ## Type Aliases
43
+
44
+ | Type Alias | Description |
45
+ | --- | --- |
46
+ | [UserAuthenticationChangeEvent](./foundation-user.userauthenticationchangeevent.md) | UserAuthenticationChangeEvent. |
47
+
@@ -0,0 +1,11 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [SetUserProperties](./foundation-user.setuserproperties.md) &gt; [details](./foundation-user.setuserproperties.details.md)
4
+
5
+ ## SetUserProperties.details property
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ readonly details: UserDetailsProperty;
11
+ ```
@@ -0,0 +1,26 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [SetUserProperties](./foundation-user.setuserproperties.md)
4
+
5
+ ## SetUserProperties interface
6
+
7
+ SetUserProperties is a partial match of `LoginAck` from `@genesislcap/foundation-auth`<!-- -->.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ export interface SetUserProperties extends Partial<UserQueueProperties>
13
+ ```
14
+ **Extends:** Partial&lt;[UserQueueProperties](./foundation-user.userqueueproperties.md)<!-- -->&gt;
15
+
16
+ ## Properties
17
+
18
+ | Property | Modifiers | Type | Description |
19
+ | --- | --- | --- | --- |
20
+ | [details](./foundation-user.setuserproperties.details.md) | <code>readonly</code> | [UserDetailsProperty](./foundation-user.userdetailsproperty.md) | |
21
+ | [permission](./foundation-user.setuserproperties.permission.md) | <code>readonly</code> | string\[\] | |
22
+ | [profile](./foundation-user.setuserproperties.profile.md) | <code>readonly</code> | string\[\] | |
23
+ | [sourceRef](./foundation-user.setuserproperties.sourceref.md) | <code>readonly</code> | string | |
24
+ | [userKVs](./foundation-user.setuserproperties.userkvs.md) | <code>readonly</code> | [UserKVsProperty](./foundation-user.userkvsproperty.md) | |
25
+ | [userName](./foundation-user.setuserproperties.username.md) | <code>readonly</code> | string | |
26
+
@@ -0,0 +1,11 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [SetUserProperties](./foundation-user.setuserproperties.md) &gt; [permission](./foundation-user.setuserproperties.permission.md)
4
+
5
+ ## SetUserProperties.permission property
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ readonly permission: string[];
11
+ ```
@@ -0,0 +1,11 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [SetUserProperties](./foundation-user.setuserproperties.md) &gt; [profile](./foundation-user.setuserproperties.profile.md)
4
+
5
+ ## SetUserProperties.profile property
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ readonly profile: string[];
11
+ ```
@@ -0,0 +1,11 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [SetUserProperties](./foundation-user.setuserproperties.md) &gt; [sourceRef](./foundation-user.setuserproperties.sourceref.md)
4
+
5
+ ## SetUserProperties.sourceRef property
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ readonly sourceRef: string;
11
+ ```
@@ -0,0 +1,11 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [SetUserProperties](./foundation-user.setuserproperties.md) &gt; [userKVs](./foundation-user.setuserproperties.userkvs.md)
4
+
5
+ ## SetUserProperties.userKVs property
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ readonly userKVs: UserKVsProperty;
11
+ ```
@@ -0,0 +1,11 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [SetUserProperties](./foundation-user.setuserproperties.md) &gt; [userName](./foundation-user.setuserproperties.username.md)
4
+
5
+ ## SetUserProperties.userName property
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ readonly userName: string;
11
+ ```
@@ -0,0 +1,33 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [User](./foundation-user.user.md) &gt; [addAuthenticationChangeListener](./foundation-user.user.addauthenticationchangelistener.md)
4
+
5
+ ## User.addAuthenticationChangeListener() method
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ addAuthenticationChangeListener(listener: Listener<UserAuthenticationChangeEvent>): () => void;
11
+ ```
12
+
13
+ ## Parameters
14
+
15
+ | Parameter | Type | Description |
16
+ | --- | --- | --- |
17
+ | listener | Listener&lt;[UserAuthenticationChangeEvent](./foundation-user.userauthenticationchangeevent.md)<!-- -->&gt; | A listener function. |
18
+
19
+ **Returns:**
20
+
21
+ () =&gt; void
22
+
23
+ ## Example
24
+
25
+
26
+ ```ts
27
+ import type { UserAuthenticationChangeEvent } from '@genesislcap/foundation-user';
28
+ ...
29
+ const unsubscribe = this.user.addAuthenticationChangeListener((event: UserAuthenticationChangeEvent) => {
30
+ console.log('User authenticated?', event.detail);
31
+ });
32
+ ```
33
+
@@ -0,0 +1,15 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [User](./foundation-user.user.md) &gt; [clearTrackingHistory](./foundation-user.user.cleartrackinghistory.md)
4
+
5
+ ## User.clearTrackingHistory() method
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ clearTrackingHistory(): void;
11
+ ```
12
+ **Returns:**
13
+
14
+ void
15
+
@@ -0,0 +1,11 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [User](./foundation-user.user.md) &gt; [details](./foundation-user.user.details.md)
4
+
5
+ ## User.details property
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ readonly details: SetUserProperties['details'];
11
+ ```
@@ -0,0 +1,22 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [User](./foundation-user.user.md) &gt; [hasPermission](./foundation-user.user.haspermission.md)
4
+
5
+ ## User.hasPermission() method
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ hasPermission(permission: string | string[]): boolean;
11
+ ```
12
+
13
+ ## Parameters
14
+
15
+ | Parameter | Type | Description |
16
+ | --- | --- | --- |
17
+ | permission | string \| string\[\] | A permission string or an array of permission strings to check. |
18
+
19
+ **Returns:**
20
+
21
+ boolean
22
+
@@ -0,0 +1,22 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [User](./foundation-user.user.md) &gt; [hasProfile](./foundation-user.user.hasprofile.md)
4
+
5
+ ## User.hasProfile() method
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ hasProfile(profile: string | string[]): boolean;
11
+ ```
12
+
13
+ ## Parameters
14
+
15
+ | Parameter | Type | Description |
16
+ | --- | --- | --- |
17
+ | profile | string \| string\[\] | A profile string or an array of profile strings to check. |
18
+
19
+ **Returns:**
20
+
21
+ boolean
22
+
@@ -0,0 +1,15 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [User](./foundation-user.user.md) &gt; [isAdmin](./foundation-user.user.isadmin.md)
4
+
5
+ ## User.isAdmin() method
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ isAdmin(): boolean;
11
+ ```
12
+ **Returns:**
13
+
14
+ boolean
15
+
@@ -0,0 +1,11 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [User](./foundation-user.user.md) &gt; [isAnonymous](./foundation-user.user.isanonymous.md)
4
+
5
+ ## User.isAnonymous property
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ readonly isAnonymous: boolean;
11
+ ```
@@ -0,0 +1,11 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [User](./foundation-user.user.md) &gt; [isAuthenticated](./foundation-user.user.isauthenticated.md)
4
+
5
+ ## User.isAuthenticated property
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ readonly isAuthenticated: boolean;
11
+ ```
@@ -0,0 +1,15 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [User](./foundation-user.user.md) &gt; [isBanned](./foundation-user.user.isbanned.md)
4
+
5
+ ## User.isBanned() method
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ isBanned(): boolean;
11
+ ```
12
+ **Returns:**
13
+
14
+ boolean
15
+
@@ -0,0 +1,56 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [User](./foundation-user.user.md)
4
+
5
+ ## User interface
6
+
7
+ User interface.
8
+
9
+ **Signature:**
10
+
11
+ ```typescript
12
+ export interface User extends UserPathHistory, UserActionHistory
13
+ ```
14
+ **Extends:** [UserPathHistory](./foundation-user.userpathhistory.md)<!-- -->, [UserActionHistory](./foundation-user.useractionhistory.md)
15
+
16
+ ## Remarks
17
+
18
+ The user singleton, which always exists in either an anonymous or authenticated mode.
19
+
20
+ ## Example
21
+
22
+
23
+ ```ts
24
+ import { User } from '@genesislcap/foundation-user';
25
+ ...
26
+ @User private user: User
27
+ ```
28
+
29
+ ## Properties
30
+
31
+ | Property | Modifiers | Type | Description |
32
+ | --- | --- | --- | --- |
33
+ | [details](./foundation-user.user.details.md) | <code>readonly</code> | [SetUserProperties](./foundation-user.setuserproperties.md)<!-- -->\['details'\] | |
34
+ | [isAnonymous](./foundation-user.user.isanonymous.md) | <code>readonly</code> | boolean | |
35
+ | [isAuthenticated](./foundation-user.user.isauthenticated.md) | <code>readonly</code> | boolean | |
36
+ | [permission](./foundation-user.user.permission.md) | <code>readonly</code> | string\[\] | |
37
+ | [profile](./foundation-user.user.profile.md) | <code>readonly</code> | string\[\] | |
38
+ | [rawProperties](./foundation-user.user.rawproperties.md) | <code>readonly</code> | Partial&lt;[SetUserProperties](./foundation-user.setuserproperties.md)<!-- -->&gt; | A structuredClone of the raw unmanaged properties used to set the user. |
39
+ | [sourceRef](./foundation-user.user.sourceref.md) | <code>readonly</code> | string | |
40
+ | [userKVs](./foundation-user.user.userkvs.md) | <code>readonly</code> | { \[key: string\]: any; } | |
41
+ | [username](./foundation-user.user.username.md) | <code>readonly</code> | string | |
42
+ | [userName](./foundation-user.user.username.md) | <code>readonly</code> | string | |
43
+
44
+ ## Methods
45
+
46
+ | Method | Description |
47
+ | --- | --- |
48
+ | [addAuthenticationChangeListener(listener)](./foundation-user.user.addauthenticationchangelistener.md) | |
49
+ | [clearTrackingHistory()](./foundation-user.user.cleartrackinghistory.md) | |
50
+ | [hasPermission(permission)](./foundation-user.user.haspermission.md) | |
51
+ | [hasProfile(profile)](./foundation-user.user.hasprofile.md) | |
52
+ | [isAdmin()](./foundation-user.user.isadmin.md) | |
53
+ | [isBanned()](./foundation-user.user.isbanned.md) | |
54
+ | [set(properties)](./foundation-user.user.set.md) | |
55
+ | [unset()](./foundation-user.user.unset.md) | |
56
+
@@ -0,0 +1,11 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [User](./foundation-user.user.md) &gt; [permission](./foundation-user.user.permission.md)
4
+
5
+ ## User.permission property
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ readonly permission: string[];
11
+ ```
@@ -0,0 +1,11 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@genesislcap/foundation-user](./foundation-user.md) &gt; [User](./foundation-user.user.md) &gt; [profile](./foundation-user.user.profile.md)
4
+
5
+ ## User.profile property
6
+
7
+ **Signature:**
8
+
9
+ ```typescript
10
+ readonly profile: string[];
11
+ ```