@3sixty/rights-management-plugins 0.0.0-stage → 0.20.0-next.1

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 (134) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +32 -2
  3. package/dist/es/index.js +34 -0
  4. package/dist/es/index.js.map +1 -0
  5. package/dist/es/models/IAutomationPolicyExecutionActionConfig.js +4 -0
  6. package/dist/es/models/IAutomationPolicyExecutionActionConfig.js.map +1 -0
  7. package/dist/es/models/IAutomationPolicyExecutionActionConstructorOptions.js +2 -0
  8. package/dist/es/models/IAutomationPolicyExecutionActionConstructorOptions.js.map +1 -0
  9. package/dist/es/models/IDefaultPolicyArbiterConfig.js +4 -0
  10. package/dist/es/models/IDefaultPolicyArbiterConfig.js.map +1 -0
  11. package/dist/es/models/IDefaultPolicyArbiterConstructorOptions.js +4 -0
  12. package/dist/es/models/IDefaultPolicyArbiterConstructorOptions.js.map +1 -0
  13. package/dist/es/models/IDefaultPolicyEnforcementProcessorConfig.js +4 -0
  14. package/dist/es/models/IDefaultPolicyEnforcementProcessorConfig.js.map +1 -0
  15. package/dist/es/models/IDefaultPolicyEnforcementProcessorConstructorOptions.js +2 -0
  16. package/dist/es/models/IDefaultPolicyEnforcementProcessorConstructorOptions.js.map +1 -0
  17. package/dist/es/models/IIdentityPolicyInformationSourceConstructorOptions.js +4 -0
  18. package/dist/es/models/IIdentityPolicyInformationSourceConstructorOptions.js.map +1 -0
  19. package/dist/es/models/IIdentityProfilePolicyInformationSourceConstructorOptions.js +4 -0
  20. package/dist/es/models/IIdentityProfilePolicyInformationSourceConstructorOptions.js.map +1 -0
  21. package/dist/es/models/ILoggingPolicyExecutionActionConfig.js +2 -0
  22. package/dist/es/models/ILoggingPolicyExecutionActionConfig.js.map +1 -0
  23. package/dist/es/models/ILoggingPolicyExecutionActionConstructorOptions.js +2 -0
  24. package/dist/es/models/ILoggingPolicyExecutionActionConstructorOptions.js.map +1 -0
  25. package/dist/es/models/IPassThroughPolicyArbiterConstructorOptions.js +4 -0
  26. package/dist/es/models/IPassThroughPolicyArbiterConstructorOptions.js.map +1 -0
  27. package/dist/es/models/IPassThroughPolicyEnforcementProcessorConstructorOptions.js +4 -0
  28. package/dist/es/models/IPassThroughPolicyEnforcementProcessorConstructorOptions.js.map +1 -0
  29. package/dist/es/models/IPassThroughPolicyNegotiatorConfig.js +4 -0
  30. package/dist/es/models/IPassThroughPolicyNegotiatorConfig.js.map +1 -0
  31. package/dist/es/models/IPassThroughPolicyNegotiatorConstructorOptions.js +2 -0
  32. package/dist/es/models/IPassThroughPolicyNegotiatorConstructorOptions.js.map +1 -0
  33. package/dist/es/models/IPassThroughPolicyObligationEnforcerConstructorOptions.js +4 -0
  34. package/dist/es/models/IPassThroughPolicyObligationEnforcerConstructorOptions.js.map +1 -0
  35. package/dist/es/models/IPassThroughPolicyRequesterConstructorOptions.js +4 -0
  36. package/dist/es/models/IPassThroughPolicyRequesterConstructorOptions.js.map +1 -0
  37. package/dist/es/models/IStaticPolicyInformationSource.js +2 -0
  38. package/dist/es/models/IStaticPolicyInformationSource.js.map +1 -0
  39. package/dist/es/models/IStaticPolicyInformationSourceConfig.js +2 -0
  40. package/dist/es/models/IStaticPolicyInformationSourceConfig.js.map +1 -0
  41. package/dist/es/models/IStaticPolicyInformationSourceConstructorOptions.js +2 -0
  42. package/dist/es/models/IStaticPolicyInformationSourceConstructorOptions.js.map +1 -0
  43. package/dist/es/policyArbiters/defaultPolicyArbiter.js +1880 -0
  44. package/dist/es/policyArbiters/defaultPolicyArbiter.js.map +1 -0
  45. package/dist/es/policyArbiters/passThroughPolicyArbiter.js +59 -0
  46. package/dist/es/policyArbiters/passThroughPolicyArbiter.js.map +1 -0
  47. package/dist/es/policyEnforcementProcessor/defaultPolicyEnforcementProcessor.js +198 -0
  48. package/dist/es/policyEnforcementProcessor/defaultPolicyEnforcementProcessor.js.map +1 -0
  49. package/dist/es/policyEnforcementProcessor/passThroughPolicyEnforcementProcessor.js +54 -0
  50. package/dist/es/policyEnforcementProcessor/passThroughPolicyEnforcementProcessor.js.map +1 -0
  51. package/dist/es/policyExecutionActions/automationPolicyExecutionAction.js +77 -0
  52. package/dist/es/policyExecutionActions/automationPolicyExecutionAction.js.map +1 -0
  53. package/dist/es/policyExecutionActions/loggingPolicyExecutionAction.js +121 -0
  54. package/dist/es/policyExecutionActions/loggingPolicyExecutionAction.js.map +1 -0
  55. package/dist/es/policyInformationSources/identityPolicyInformationSource.js +91 -0
  56. package/dist/es/policyInformationSources/identityPolicyInformationSource.js.map +1 -0
  57. package/dist/es/policyInformationSources/identityProfilePolicyInformationSource.js +112 -0
  58. package/dist/es/policyInformationSources/identityProfilePolicyInformationSource.js.map +1 -0
  59. package/dist/es/policyInformationSources/staticPolicyInformationSource.js +96 -0
  60. package/dist/es/policyInformationSources/staticPolicyInformationSource.js.map +1 -0
  61. package/dist/es/policyNegotiators/passThroughPolicyNegotiator.js +95 -0
  62. package/dist/es/policyNegotiators/passThroughPolicyNegotiator.js.map +1 -0
  63. package/dist/es/policyObligationEnforcers/passThroughPolicyObligationEnforcer.js +56 -0
  64. package/dist/es/policyObligationEnforcers/passThroughPolicyObligationEnforcer.js.map +1 -0
  65. package/dist/es/policyRequesters/passThroughPolicyRequester.js +103 -0
  66. package/dist/es/policyRequesters/passThroughPolicyRequester.js.map +1 -0
  67. package/dist/types/index.d.ts +31 -0
  68. package/dist/types/models/IAutomationPolicyExecutionActionConfig.d.ts +9 -0
  69. package/dist/types/models/IAutomationPolicyExecutionActionConstructorOptions.d.ts +15 -0
  70. package/dist/types/models/IDefaultPolicyArbiterConfig.d.ts +10 -0
  71. package/dist/types/models/IDefaultPolicyArbiterConstructorOptions.d.ts +19 -0
  72. package/dist/types/models/IDefaultPolicyEnforcementProcessorConfig.d.ts +11 -0
  73. package/dist/types/models/IDefaultPolicyEnforcementProcessorConstructorOptions.d.ts +14 -0
  74. package/dist/types/models/IIdentityPolicyInformationSourceConstructorOptions.d.ts +14 -0
  75. package/dist/types/models/IIdentityProfilePolicyInformationSourceConstructorOptions.d.ts +14 -0
  76. package/dist/types/models/ILoggingPolicyExecutionActionConfig.d.ts +25 -0
  77. package/dist/types/models/ILoggingPolicyExecutionActionConstructorOptions.d.ts +14 -0
  78. package/dist/types/models/IPassThroughPolicyArbiterConstructorOptions.d.ts +9 -0
  79. package/dist/types/models/IPassThroughPolicyEnforcementProcessorConstructorOptions.d.ts +9 -0
  80. package/dist/types/models/IPassThroughPolicyNegotiatorConfig.d.ts +9 -0
  81. package/dist/types/models/IPassThroughPolicyNegotiatorConstructorOptions.d.ts +14 -0
  82. package/dist/types/models/IPassThroughPolicyObligationEnforcerConstructorOptions.d.ts +9 -0
  83. package/dist/types/models/IPassThroughPolicyRequesterConstructorOptions.d.ts +9 -0
  84. package/dist/types/models/IStaticPolicyInformationSource.d.ts +23 -0
  85. package/dist/types/models/IStaticPolicyInformationSourceConfig.d.ts +10 -0
  86. package/dist/types/models/IStaticPolicyInformationSourceConstructorOptions.d.ts +14 -0
  87. package/dist/types/policyArbiters/defaultPolicyArbiter.d.ts +38 -0
  88. package/dist/types/policyArbiters/passThroughPolicyArbiter.d.ts +32 -0
  89. package/dist/types/policyEnforcementProcessor/defaultPolicyEnforcementProcessor.d.ts +36 -0
  90. package/dist/types/policyEnforcementProcessor/passThroughPolicyEnforcementProcessor.d.ts +32 -0
  91. package/dist/types/policyExecutionActions/automationPolicyExecutionAction.d.ts +45 -0
  92. package/dist/types/policyExecutionActions/loggingPolicyExecutionAction.d.ts +37 -0
  93. package/dist/types/policyInformationSources/identityPolicyInformationSource.d.ts +31 -0
  94. package/dist/types/policyInformationSources/identityProfilePolicyInformationSource.d.ts +31 -0
  95. package/dist/types/policyInformationSources/staticPolicyInformationSource.d.ts +37 -0
  96. package/dist/types/policyNegotiators/passThroughPolicyNegotiator.d.ts +48 -0
  97. package/dist/types/policyObligationEnforcers/passThroughPolicyObligationEnforcer.d.ts +32 -0
  98. package/dist/types/policyRequesters/passThroughPolicyRequester.d.ts +48 -0
  99. package/docs/changelog.md +24 -0
  100. package/docs/examples.md +295 -0
  101. package/docs/reference/classes/AutomationPolicyExecutionAction.md +143 -0
  102. package/docs/reference/classes/DefaultPolicyArbiter.md +113 -0
  103. package/docs/reference/classes/DefaultPolicyEnforcementProcessor.md +115 -0
  104. package/docs/reference/classes/IdentityPolicyInformationSource.md +103 -0
  105. package/docs/reference/classes/IdentityProfilePolicyInformationSource.md +103 -0
  106. package/docs/reference/classes/LoggingPolicyExecutionAction.md +127 -0
  107. package/docs/reference/classes/PassThroughPolicyArbiter.md +103 -0
  108. package/docs/reference/classes/PassThroughPolicyEnforcementProcessor.md +107 -0
  109. package/docs/reference/classes/PassThroughPolicyNegotiator.md +149 -0
  110. package/docs/reference/classes/PassThroughPolicyObligationEnforcer.md +109 -0
  111. package/docs/reference/classes/PassThroughPolicyRequester.md +169 -0
  112. package/docs/reference/classes/StaticPolicyInformationSource.md +123 -0
  113. package/docs/reference/index.md +38 -0
  114. package/docs/reference/interfaces/IAutomationPolicyExecutionActionConfig.md +11 -0
  115. package/docs/reference/interfaces/IAutomationPolicyExecutionActionConstructorOptions.md +25 -0
  116. package/docs/reference/interfaces/IDefaultPolicyArbiterConfig.md +17 -0
  117. package/docs/reference/interfaces/IDefaultPolicyArbiterConstructorOptions.md +33 -0
  118. package/docs/reference/interfaces/IDefaultPolicyEnforcementProcessorConfig.md +13 -0
  119. package/docs/reference/interfaces/IDefaultPolicyEnforcementProcessorConstructorOptions.md +19 -0
  120. package/docs/reference/interfaces/IIdentityPolicyInformationSourceConstructorOptions.md +25 -0
  121. package/docs/reference/interfaces/IIdentityProfilePolicyInformationSourceConstructorOptions.md +25 -0
  122. package/docs/reference/interfaces/ILoggingPolicyExecutionActionConfig.md +53 -0
  123. package/docs/reference/interfaces/ILoggingPolicyExecutionActionConstructorOptions.md +19 -0
  124. package/docs/reference/interfaces/IPassThroughPolicyArbiterConstructorOptions.md +11 -0
  125. package/docs/reference/interfaces/IPassThroughPolicyEnforcementProcessorConstructorOptions.md +11 -0
  126. package/docs/reference/interfaces/IPassThroughPolicyNegotiatorConfig.md +11 -0
  127. package/docs/reference/interfaces/IPassThroughPolicyNegotiatorConstructorOptions.md +19 -0
  128. package/docs/reference/interfaces/IPassThroughPolicyObligationEnforcerConstructorOptions.md +11 -0
  129. package/docs/reference/interfaces/IPassThroughPolicyRequesterConstructorOptions.md +11 -0
  130. package/docs/reference/interfaces/IStaticPolicyInformationSource.md +43 -0
  131. package/docs/reference/interfaces/IStaticPolicyInformationSourceConfig.md +11 -0
  132. package/docs/reference/interfaces/IStaticPolicyInformationSourceConstructorOptions.md +19 -0
  133. package/locales/en.json +79 -0
  134. package/package.json +60 -5
@@ -0,0 +1,103 @@
1
+ # Class: IdentityPolicyInformationSource
2
+
3
+ Policy information source which retrieves the identity information.
4
+
5
+ ## Implements
6
+
7
+ - `IPolicyInformationSource`
8
+
9
+ ## Constructors
10
+
11
+ ### Constructor
12
+
13
+ > **new IdentityPolicyInformationSource**(`options?`): `IdentityPolicyInformationSource`
14
+
15
+ Create a new instance of IdentityPolicyInformationSource.
16
+
17
+ #### Parameters
18
+
19
+ ##### options?
20
+
21
+ [`IIdentityPolicyInformationSourceConstructorOptions`](../interfaces/IIdentityPolicyInformationSourceConstructorOptions.md)
22
+
23
+ The options for the logging policy source.
24
+
25
+ #### Returns
26
+
27
+ `IdentityPolicyInformationSource`
28
+
29
+ ## Properties
30
+
31
+ ### CLASS\_NAME {#class_name}
32
+
33
+ > `readonly` `static` **CLASS\_NAME**: `string`
34
+
35
+ The class name of the Identity Policy Information Source.
36
+
37
+ ## Methods
38
+
39
+ ### className() {#classname}
40
+
41
+ > **className**(): `string`
42
+
43
+ Returns the class name of the component.
44
+
45
+ #### Returns
46
+
47
+ `string`
48
+
49
+ The class name of the component.
50
+
51
+ #### Implementation of
52
+
53
+ `IPolicyInformationSource.className`
54
+
55
+ ***
56
+
57
+ ### retrieve() {#retrieve}
58
+
59
+ > **retrieve**\<`D`\>(`policy`, `accessMode`, `data?`, `action?`): `Promise`\<`IRightsManagementInformation` \| `undefined`\>
60
+
61
+ Retrieve information from the sources.
62
+
63
+ #### Type Parameters
64
+
65
+ ##### D {#d}
66
+
67
+ `D` = `unknown`
68
+
69
+ #### Parameters
70
+
71
+ ##### policy
72
+
73
+ `IRightsManagementPolicy` \| `undefined`
74
+
75
+ The policy to retrieve information for if available.
76
+
77
+ ##### accessMode
78
+
79
+ `PolicyInformationAccessMode`
80
+
81
+ The access mode to use for the retrieval.
82
+
83
+ ##### data?
84
+
85
+ `D`
86
+
87
+ The data to process.
88
+
89
+ ##### action?
90
+
91
+ `string`
92
+
93
+ The action that was evaluated.
94
+
95
+ #### Returns
96
+
97
+ `Promise`\<`IRightsManagementInformation` \| `undefined`\>
98
+
99
+ The objects containing relevant information or undefined if nothing relevant is found.
100
+
101
+ #### Implementation of
102
+
103
+ `IPolicyInformationSource.retrieve`
@@ -0,0 +1,103 @@
1
+ # Class: IdentityProfilePolicyInformationSource
2
+
3
+ Policy information source which retrieves identity profile information.
4
+
5
+ ## Implements
6
+
7
+ - `IPolicyInformationSource`
8
+
9
+ ## Constructors
10
+
11
+ ### Constructor
12
+
13
+ > **new IdentityProfilePolicyInformationSource**(`options?`): `IdentityProfilePolicyInformationSource`
14
+
15
+ Create a new instance of IdentityProfilePolicyInformationSource.
16
+
17
+ #### Parameters
18
+
19
+ ##### options?
20
+
21
+ [`IIdentityProfilePolicyInformationSourceConstructorOptions`](../interfaces/IIdentityProfilePolicyInformationSourceConstructorOptions.md)
22
+
23
+ The options for the identity profile policy source.
24
+
25
+ #### Returns
26
+
27
+ `IdentityProfilePolicyInformationSource`
28
+
29
+ ## Properties
30
+
31
+ ### CLASS\_NAME {#class_name}
32
+
33
+ > `readonly` `static` **CLASS\_NAME**: `string`
34
+
35
+ The class name of the Identity Profile Policy Information Source.
36
+
37
+ ## Methods
38
+
39
+ ### className() {#classname}
40
+
41
+ > **className**(): `string`
42
+
43
+ Returns the class name of the component.
44
+
45
+ #### Returns
46
+
47
+ `string`
48
+
49
+ The class name of the component.
50
+
51
+ #### Implementation of
52
+
53
+ `IPolicyInformationSource.className`
54
+
55
+ ***
56
+
57
+ ### retrieve() {#retrieve}
58
+
59
+ > **retrieve**\<`D`\>(`policy`, `accessMode`, `data?`, `action?`): `Promise`\<`IRightsManagementInformation` \| `undefined`\>
60
+
61
+ Retrieve information from the sources.
62
+
63
+ #### Type Parameters
64
+
65
+ ##### D {#d}
66
+
67
+ `D` = `unknown`
68
+
69
+ #### Parameters
70
+
71
+ ##### policy
72
+
73
+ `IRightsManagementPolicy` \| `undefined`
74
+
75
+ The policy to retrieve information for if available.
76
+
77
+ ##### accessMode
78
+
79
+ `PolicyInformationAccessMode`
80
+
81
+ The access mode to use for the retrieval.
82
+
83
+ ##### data?
84
+
85
+ `D`
86
+
87
+ The data to process.
88
+
89
+ ##### action?
90
+
91
+ `string`
92
+
93
+ The action that was evaluated.
94
+
95
+ #### Returns
96
+
97
+ `Promise`\<`IRightsManagementInformation` \| `undefined`\>
98
+
99
+ The objects containing relevant information or undefined if nothing relevant is found.
100
+
101
+ #### Implementation of
102
+
103
+ `IPolicyInformationSource.retrieve`
@@ -0,0 +1,127 @@
1
+ # Class: LoggingPolicyExecutionAction
2
+
3
+ Logging Policy Execution Action to send decisions to logging.
4
+
5
+ ## Implements
6
+
7
+ - `IPolicyExecutionAction`
8
+
9
+ ## Constructors
10
+
11
+ ### Constructor
12
+
13
+ > **new LoggingPolicyExecutionAction**(`options?`): `LoggingPolicyExecutionAction`
14
+
15
+ Create a new instance of LoggingPolicyExecutionAction.
16
+
17
+ #### Parameters
18
+
19
+ ##### options?
20
+
21
+ [`ILoggingPolicyExecutionActionConstructorOptions`](../interfaces/ILoggingPolicyExecutionActionConstructorOptions.md)
22
+
23
+ The options for the logging policy execution action.
24
+
25
+ #### Returns
26
+
27
+ `LoggingPolicyExecutionAction`
28
+
29
+ ## Properties
30
+
31
+ ### CLASS\_NAME {#class_name}
32
+
33
+ > `readonly` `static` **CLASS\_NAME**: `string`
34
+
35
+ The class name of the Logging Policy Execution Action.
36
+
37
+ ## Methods
38
+
39
+ ### className() {#classname}
40
+
41
+ > **className**(): `string`
42
+
43
+ Returns the class name of the component.
44
+
45
+ #### Returns
46
+
47
+ `string`
48
+
49
+ The class name of the component.
50
+
51
+ #### Implementation of
52
+
53
+ `IPolicyExecutionAction.className`
54
+
55
+ ***
56
+
57
+ ### supportedStages() {#supportedstages}
58
+
59
+ > **supportedStages**(): `PolicyDecisionStage`[]
60
+
61
+ Which stages should the action be executed at.
62
+
63
+ #### Returns
64
+
65
+ `PolicyDecisionStage`[]
66
+
67
+ List of stages.
68
+
69
+ #### Implementation of
70
+
71
+ `IPolicyExecutionAction.supportedStages`
72
+
73
+ ***
74
+
75
+ ### execute() {#execute}
76
+
77
+ > **execute**\<`D`\>(`policy`, `decisions`, `data`, `action`, `stage`): `Promise`\<`void`\>
78
+
79
+ Execute function type for policy actions.
80
+
81
+ #### Type Parameters
82
+
83
+ ##### D {#d}
84
+
85
+ `D` = `unknown`
86
+
87
+ #### Parameters
88
+
89
+ ##### policy
90
+
91
+ `IRightsManagementPolicy`
92
+
93
+ The policy that applied to the data.
94
+
95
+ ##### decisions
96
+
97
+ `IPolicyDecision`[]
98
+
99
+ The decisions made by the PDP.
100
+
101
+ ##### data
102
+
103
+ `D` \| `undefined`
104
+
105
+ The data to process.
106
+
107
+ ##### action
108
+
109
+ `string` \| `undefined`
110
+
111
+ Optional action to make a decision on, if not provided, the arbiter will evaluate all actions in the agreement.
112
+
113
+ ##### stage
114
+
115
+ `PolicyDecisionStage`
116
+
117
+ The stage of the policy decision.
118
+
119
+ #### Returns
120
+
121
+ `Promise`\<`void`\>
122
+
123
+ A promise that resolves when the action is complete.
124
+
125
+ #### Implementation of
126
+
127
+ `IPolicyExecutionAction.execute`
@@ -0,0 +1,103 @@
1
+ # Class: PassThroughPolicyArbiter
2
+
3
+ Pass Through Policy Arbiter.
4
+
5
+ ## Implements
6
+
7
+ - `IPolicyArbiter`
8
+
9
+ ## Constructors
10
+
11
+ ### Constructor
12
+
13
+ > **new PassThroughPolicyArbiter**(`options?`): `PassThroughPolicyArbiter`
14
+
15
+ Create a new instance of PassThroughPolicyArbiter.
16
+
17
+ #### Parameters
18
+
19
+ ##### options?
20
+
21
+ [`IPassThroughPolicyArbiterConstructorOptions`](../interfaces/IPassThroughPolicyArbiterConstructorOptions.md)
22
+
23
+ The options for the pass through policy arbiter.
24
+
25
+ #### Returns
26
+
27
+ `PassThroughPolicyArbiter`
28
+
29
+ ## Properties
30
+
31
+ ### CLASS\_NAME {#class_name}
32
+
33
+ > `readonly` `static` **CLASS\_NAME**: `string`
34
+
35
+ The class name of the Pass Through Policy Arbiter.
36
+
37
+ ## Methods
38
+
39
+ ### className() {#classname}
40
+
41
+ > **className**(): `string`
42
+
43
+ Returns the class name of the component.
44
+
45
+ #### Returns
46
+
47
+ `string`
48
+
49
+ The class name of the component.
50
+
51
+ #### Implementation of
52
+
53
+ `IPolicyArbiter.className`
54
+
55
+ ***
56
+
57
+ ### decide() {#decide}
58
+
59
+ > **decide**\<`D`\>(`agreement`, `information?`, `data?`, `action?`): `Promise`\<`IPolicyDecision`[]\>
60
+
61
+ Makes decisions regarding policy access to data.
62
+
63
+ #### Type Parameters
64
+
65
+ ##### D {#d}
66
+
67
+ `D` = `unknown`
68
+
69
+ #### Parameters
70
+
71
+ ##### agreement
72
+
73
+ `IDataspaceProtocolAgreement`
74
+
75
+ The agreement to evaluate.
76
+
77
+ ##### information?
78
+
79
+ `IRightsManagementInformation`
80
+
81
+ Information provided by the requester to determine if a policy can be created.
82
+
83
+ ##### data?
84
+
85
+ `D`
86
+
87
+ The data to make a decision on.
88
+
89
+ ##### action?
90
+
91
+ `string`
92
+
93
+ Optional action to make a decision on, if not provided, the arbiter will evaluate all actions in the agreement.
94
+
95
+ #### Returns
96
+
97
+ `Promise`\<`IPolicyDecision`[]\>
98
+
99
+ The decisions about access to the data.
100
+
101
+ #### Implementation of
102
+
103
+ `IPolicyArbiter.decide`
@@ -0,0 +1,107 @@
1
+ # Class: PassThroughPolicyEnforcementProcessor
2
+
3
+ Pass Through Policy Enforcement Processor.
4
+
5
+ ## Implements
6
+
7
+ - `IPolicyEnforcementProcessor`
8
+
9
+ ## Constructors
10
+
11
+ ### Constructor
12
+
13
+ > **new PassThroughPolicyEnforcementProcessor**(`options?`): `PassThroughPolicyEnforcementProcessor`
14
+
15
+ Create a new instance of PassThroughPolicyEnforcementProcessor.
16
+
17
+ #### Parameters
18
+
19
+ ##### options?
20
+
21
+ [`IPassThroughPolicyEnforcementProcessorConstructorOptions`](../interfaces/IPassThroughPolicyEnforcementProcessorConstructorOptions.md)
22
+
23
+ The options for the pass through policy enforcement processor.
24
+
25
+ #### Returns
26
+
27
+ `PassThroughPolicyEnforcementProcessor`
28
+
29
+ ## Properties
30
+
31
+ ### CLASS\_NAME {#class_name}
32
+
33
+ > `readonly` `static` **CLASS\_NAME**: `string`
34
+
35
+ The class name of the Pass Through Policy Enforcement Processor.
36
+
37
+ ## Methods
38
+
39
+ ### className() {#classname}
40
+
41
+ > **className**(): `string`
42
+
43
+ Returns the class name of the component.
44
+
45
+ #### Returns
46
+
47
+ `string`
48
+
49
+ The class name of the component.
50
+
51
+ #### Implementation of
52
+
53
+ `IPolicyEnforcementProcessor.className`
54
+
55
+ ***
56
+
57
+ ### process() {#process}
58
+
59
+ > **process**\<`D`, `R`\>(`agreement`, `decisions`, `data?`, `action?`): `Promise`\<`R`\>
60
+
61
+ Process the response from the policy decision point.
62
+
63
+ #### Type Parameters
64
+
65
+ ##### D {#d}
66
+
67
+ `D` = `unknown`
68
+
69
+ ##### R {#r}
70
+
71
+ `R` = `D`
72
+
73
+ #### Parameters
74
+
75
+ ##### agreement
76
+
77
+ `IDataspaceProtocolAgreement`
78
+
79
+ The agreement to process.
80
+
81
+ ##### decisions
82
+
83
+ `IPolicyDecision`[]
84
+
85
+ The decisions made by the policy decision point.
86
+
87
+ ##### data?
88
+
89
+ `D`
90
+
91
+ The data to process.
92
+
93
+ ##### action?
94
+
95
+ `string`
96
+
97
+ Optional action to make a decision on, if not provided, the arbiter will evaluate all actions in the agreement.
98
+
99
+ #### Returns
100
+
101
+ `Promise`\<`R`\>
102
+
103
+ The data after processing.
104
+
105
+ #### Implementation of
106
+
107
+ `IPolicyEnforcementProcessor.process`
@@ -0,0 +1,149 @@
1
+ # Class: PassThroughPolicyNegotiator
2
+
3
+ Pass Through Policy Negotiator.
4
+
5
+ ## Implements
6
+
7
+ - `IPolicyNegotiator`
8
+
9
+ ## Constructors
10
+
11
+ ### Constructor
12
+
13
+ > **new PassThroughPolicyNegotiator**(`options?`): `PassThroughPolicyNegotiator`
14
+
15
+ Create a new instance of PassThroughPolicyNegotiator.
16
+
17
+ #### Parameters
18
+
19
+ ##### options?
20
+
21
+ [`IPassThroughPolicyNegotiatorConstructorOptions`](../interfaces/IPassThroughPolicyNegotiatorConstructorOptions.md)
22
+
23
+ The options for the pass through policy negotiator.
24
+
25
+ #### Returns
26
+
27
+ `PassThroughPolicyNegotiator`
28
+
29
+ ## Properties
30
+
31
+ ### CLASS\_NAME {#class_name}
32
+
33
+ > `readonly` `static` **CLASS\_NAME**: `string`
34
+
35
+ The class name of the Pass Through Policy Negotiator.
36
+
37
+ ## Methods
38
+
39
+ ### className() {#classname}
40
+
41
+ > **className**(): `string`
42
+
43
+ Returns the class name of the component.
44
+
45
+ #### Returns
46
+
47
+ `string`
48
+
49
+ The class name of the component.
50
+
51
+ #### Implementation of
52
+
53
+ `IPolicyNegotiator.className`
54
+
55
+ ***
56
+
57
+ ### supportsOffer() {#supportsoffer}
58
+
59
+ > **supportsOffer**(`offer`): `boolean`
60
+
61
+ Determines if the negotiator supports the given offer.
62
+
63
+ #### Parameters
64
+
65
+ ##### offer
66
+
67
+ `IDataspaceProtocolOffer`
68
+
69
+ The offer to check.
70
+
71
+ #### Returns
72
+
73
+ `boolean`
74
+
75
+ True if the negotiator supports the given offer.
76
+
77
+ #### Implementation of
78
+
79
+ `IPolicyNegotiator.supportsOffer`
80
+
81
+ ***
82
+
83
+ ### handleOffer() {#handleoffer}
84
+
85
+ > **handleOffer**(`offer`, `information?`): `Promise`\<\{ `accepted`: `boolean`; `interventionRequired`: `boolean`; `directAgreement?`: `boolean`; \}\>
86
+
87
+ Handle the offer.
88
+
89
+ #### Parameters
90
+
91
+ ##### offer
92
+
93
+ `IDataspaceProtocolOffer`
94
+
95
+ The offer to check.
96
+
97
+ ##### information?
98
+
99
+ `IRightsManagementInformation`
100
+
101
+ Information provided by the requester to determine if a policy can be created.
102
+
103
+ #### Returns
104
+
105
+ `Promise`\<\{ `accepted`: `boolean`; `interventionRequired`: `boolean`; `directAgreement?`: `boolean`; \}\>
106
+
107
+ Sets the accepted flag if it can be offered, the interventionRequired flag if manual agreement is needed, and directAgreement per the constructor's directAgreement option (default true).
108
+
109
+ #### Implementation of
110
+
111
+ `IPolicyNegotiator.handleOffer`
112
+
113
+ ***
114
+
115
+ ### createAgreement() {#createagreement}
116
+
117
+ > **createAgreement**(`offer`, `assignee`, `information?`): `Promise`\<`IDataspaceProtocolAgreement` \| `undefined`\>
118
+
119
+ Create an agreement based on the offer.
120
+
121
+ #### Parameters
122
+
123
+ ##### offer
124
+
125
+ `IDataspaceProtocolOffer`
126
+
127
+ The offer to create the agreement from.
128
+
129
+ ##### assignee
130
+
131
+ `string` \| `IOdrlParty`
132
+
133
+ The assignee of the agreement.
134
+
135
+ ##### information?
136
+
137
+ `IRightsManagementInformation`
138
+
139
+ Information provided by the requester to aid in the creation of the agreement.
140
+
141
+ #### Returns
142
+
143
+ `Promise`\<`IDataspaceProtocolAgreement` \| `undefined`\>
144
+
145
+ The agreement created from the offer or undefined if an agreement could not be created.
146
+
147
+ #### Implementation of
148
+
149
+ `IPolicyNegotiator.createAgreement`