@twin.org/rights-management-models 0.0.3-next.3 → 0.0.3-next.4

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 (79) hide show
  1. package/dist/es/factories/dataAccessHandlerFactory.js +9 -0
  2. package/dist/es/factories/dataAccessHandlerFactory.js.map +1 -0
  3. package/dist/es/factories/policyArbiterFactory.js +9 -0
  4. package/dist/es/factories/policyArbiterFactory.js.map +1 -0
  5. package/dist/es/factories/policyEnforcementProcessorFactory.js +9 -0
  6. package/dist/es/factories/policyEnforcementProcessorFactory.js.map +1 -0
  7. package/dist/es/factories/policyExecutionActionFactory.js +9 -0
  8. package/dist/es/factories/policyExecutionActionFactory.js.map +1 -0
  9. package/dist/es/factories/policyInformationSourceFactory.js +9 -0
  10. package/dist/es/factories/policyInformationSourceFactory.js.map +1 -0
  11. package/dist/es/factories/policyNegotiatorFactory.js +9 -0
  12. package/dist/es/factories/policyNegotiatorFactory.js.map +1 -0
  13. package/dist/es/factories/policyRequesterFactory.js +9 -0
  14. package/dist/es/factories/policyRequesterFactory.js.map +1 -0
  15. package/dist/es/index.js +8 -1
  16. package/dist/es/index.js.map +1 -1
  17. package/dist/es/models/dap/IDataAccessHandler.js.map +1 -1
  18. package/dist/es/models/dap/IDataAccessPointComponent.js.map +1 -1
  19. package/dist/es/models/dap/IDataAccessRequestPointComponent.js +2 -0
  20. package/dist/es/models/dap/IDataAccessRequestPointComponent.js.map +1 -0
  21. package/dist/es/models/pdp/IPolicyArbiter.js.map +1 -1
  22. package/dist/es/models/pdp/IPolicyDecisionPointComponent.js.map +1 -1
  23. package/dist/es/models/pep/IPolicyEnforcementPointComponent.js.map +1 -1
  24. package/dist/es/models/pep/IPolicyEnforcementProcessor.js.map +1 -1
  25. package/dist/es/models/pip/IPolicyInformationPointComponent.js.map +1 -1
  26. package/dist/es/models/pip/IPolicyInformationSource.js.map +1 -1
  27. package/dist/es/models/pnp/IPolicyNegotiationPointComponent.js.map +1 -1
  28. package/dist/es/models/pnp/IPolicyNegotiator.js.map +1 -1
  29. package/dist/es/models/pnp/IPolicyRequester.js.map +1 -1
  30. package/dist/es/models/pxp/IPolicyExecutionAction.js.map +1 -1
  31. package/dist/es/models/pxp/IPolicyExecutionPointComponent.js.map +1 -1
  32. package/dist/types/factories/dataAccessHandlerFactory.d.ts +6 -0
  33. package/dist/types/factories/policyArbiterFactory.d.ts +6 -0
  34. package/dist/types/factories/policyEnforcementProcessorFactory.d.ts +6 -0
  35. package/dist/types/factories/policyExecutionActionFactory.d.ts +6 -0
  36. package/dist/types/factories/policyInformationSourceFactory.d.ts +6 -0
  37. package/dist/types/factories/policyNegotiatorFactory.d.ts +6 -0
  38. package/dist/types/factories/policyRequesterFactory.d.ts +6 -0
  39. package/dist/types/index.d.ts +8 -1
  40. package/dist/types/models/dap/IDataAccessHandler.d.ts +2 -1
  41. package/dist/types/models/dap/IDataAccessPointComponent.d.ts +10 -25
  42. package/dist/types/models/dap/{IDataAccessPointRequestComponent.d.ts → IDataAccessRequestPointComponent.d.ts} +1 -2
  43. package/dist/types/models/pdp/IPolicyArbiter.d.ts +2 -1
  44. package/dist/types/models/pdp/IPolicyDecisionPointComponent.d.ts +0 -14
  45. package/dist/types/models/pep/IPolicyEnforcementPointComponent.d.ts +0 -14
  46. package/dist/types/models/pep/IPolicyEnforcementProcessor.d.ts +2 -1
  47. package/dist/types/models/pip/IPolicyInformationPointComponent.d.ts +0 -14
  48. package/dist/types/models/pip/IPolicyInformationSource.d.ts +3 -2
  49. package/dist/types/models/pnp/IPolicyNegotiationPointComponent.d.ts +14 -56
  50. package/dist/types/models/pnp/IPolicyNegotiator.d.ts +2 -1
  51. package/dist/types/models/pnp/IPolicyRequester.d.ts +7 -1
  52. package/dist/types/models/pxp/IPolicyExecutionAction.d.ts +2 -1
  53. package/dist/types/models/pxp/IPolicyExecutionPointComponent.d.ts +0 -16
  54. package/docs/changelog.md +7 -0
  55. package/docs/reference/index.md +7 -0
  56. package/docs/reference/interfaces/IDataAccessHandler.md +4 -0
  57. package/docs/reference/interfaces/IDataAccessPointComponent.md +20 -70
  58. package/docs/reference/interfaces/IDataAccessRequestPointComponent.md +1 -2
  59. package/docs/reference/interfaces/IPolicyArbiter.md +4 -0
  60. package/docs/reference/interfaces/IPolicyDecisionPointComponent.md +0 -50
  61. package/docs/reference/interfaces/IPolicyEnforcementPointComponent.md +0 -50
  62. package/docs/reference/interfaces/IPolicyEnforcementProcessor.md +4 -0
  63. package/docs/reference/interfaces/IPolicyExecutionAction.md +4 -0
  64. package/docs/reference/interfaces/IPolicyExecutionPointComponent.md +0 -62
  65. package/docs/reference/interfaces/IPolicyInformationPointComponent.md +0 -50
  66. package/docs/reference/interfaces/IPolicyInformationSource.md +4 -0
  67. package/docs/reference/interfaces/IPolicyNegotiationPointComponent.md +28 -172
  68. package/docs/reference/interfaces/IPolicyNegotiator.md +4 -0
  69. package/docs/reference/interfaces/IPolicyRequester.md +18 -0
  70. package/docs/reference/variables/DataAccessHandlerFactory.md +5 -0
  71. package/docs/reference/variables/PolicyArbiterFactory.md +5 -0
  72. package/docs/reference/variables/PolicyEnforcementProcessorFactory.md +5 -0
  73. package/docs/reference/variables/PolicyExecutionActionFactory.md +5 -0
  74. package/docs/reference/variables/PolicyInformationSourceFactory.md +5 -0
  75. package/docs/reference/variables/PolicyNegotiatorFactory.md +5 -0
  76. package/docs/reference/variables/PolicyRequesterFactory.md +5 -0
  77. package/package.json +1 -2
  78. package/dist/es/models/dap/IDataAccessPointRequestComponent.js +0 -2
  79. package/dist/es/models/dap/IDataAccessPointRequestComponent.js.map +0 -1
@@ -0,0 +1,9 @@
1
+ // Copyright 2025 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { Factory } from "@twin.org/core";
4
+ /**
5
+ * Factory for managing data access handlers registration and retrieval.
6
+ */
7
+ // eslint-disable-next-line @typescript-eslint/naming-convention
8
+ export const DataAccessHandlerFactory = Factory.createFactory("data-access-handler");
9
+ //# sourceMappingURL=dataAccessHandlerFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dataAccessHandlerFactory.js","sourceRoot":"","sources":["../../../src/factories/dataAccessHandlerFactory.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzC;;GAEG;AACH,gEAAgE;AAChE,MAAM,CAAC,MAAM,wBAAwB,GACpC,OAAO,CAAC,aAAa,CAAqB,qBAAqB,CAAC,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { Factory } from \"@twin.org/core\";\nimport type { IDataAccessHandler } from \"../models/dap/IDataAccessHandler.js\";\n\n/**\n * Factory for managing data access handlers registration and retrieval.\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const DataAccessHandlerFactory =\n\tFactory.createFactory<IDataAccessHandler>(\"data-access-handler\");\n"]}
@@ -0,0 +1,9 @@
1
+ // Copyright 2025 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { Factory } from "@twin.org/core";
4
+ /**
5
+ * Factory for managing policy arbiters registration and retrieval.
6
+ */
7
+ // eslint-disable-next-line @typescript-eslint/naming-convention
8
+ export const PolicyArbiterFactory = Factory.createFactory("policy-arbiter");
9
+ //# sourceMappingURL=policyArbiterFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policyArbiterFactory.js","sourceRoot":"","sources":["../../../src/factories/policyArbiterFactory.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzC;;GAEG;AACH,gEAAgE;AAChE,MAAM,CAAC,MAAM,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAiB,gBAAgB,CAAC,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { Factory } from \"@twin.org/core\";\nimport type { IPolicyArbiter } from \"../models/pdp/IPolicyArbiter.js\";\n\n/**\n * Factory for managing policy arbiters registration and retrieval.\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const PolicyArbiterFactory = Factory.createFactory<IPolicyArbiter>(\"policy-arbiter\");\n"]}
@@ -0,0 +1,9 @@
1
+ // Copyright 2025 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { Factory } from "@twin.org/core";
4
+ /**
5
+ * Factory for managing policy enforcement processors registration and retrieval.
6
+ */
7
+ // eslint-disable-next-line @typescript-eslint/naming-convention
8
+ export const PolicyEnforcementProcessorFactory = Factory.createFactory("policy-enforcement-processor");
9
+ //# sourceMappingURL=policyEnforcementProcessorFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policyEnforcementProcessorFactory.js","sourceRoot":"","sources":["../../../src/factories/policyEnforcementProcessorFactory.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzC;;GAEG;AACH,gEAAgE;AAChE,MAAM,CAAC,MAAM,iCAAiC,GAAG,OAAO,CAAC,aAAa,CACrE,8BAA8B,CAC9B,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { Factory } from \"@twin.org/core\";\nimport type { IPolicyEnforcementProcessor } from \"../models/pep/IPolicyEnforcementProcessor.js\";\n\n/**\n * Factory for managing policy enforcement processors registration and retrieval.\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const PolicyEnforcementProcessorFactory = Factory.createFactory<IPolicyEnforcementProcessor>(\n\t\"policy-enforcement-processor\"\n);\n"]}
@@ -0,0 +1,9 @@
1
+ // Copyright 2025 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { Factory } from "@twin.org/core";
4
+ /**
5
+ * Factory for managing policy execution action registration and retrieval.
6
+ */
7
+ // eslint-disable-next-line @typescript-eslint/naming-convention
8
+ export const PolicyExecutionActionFactory = Factory.createFactory("policy-execution-action");
9
+ //# sourceMappingURL=policyExecutionActionFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policyExecutionActionFactory.js","sourceRoot":"","sources":["../../../src/factories/policyExecutionActionFactory.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzC;;GAEG;AACH,gEAAgE;AAChE,MAAM,CAAC,MAAM,4BAA4B,GACxC,OAAO,CAAC,aAAa,CAAyB,yBAAyB,CAAC,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { Factory } from \"@twin.org/core\";\nimport type { IPolicyExecutionAction } from \"../models/pxp/IPolicyExecutionAction.js\";\n\n/**\n * Factory for managing policy execution action registration and retrieval.\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const PolicyExecutionActionFactory =\n\tFactory.createFactory<IPolicyExecutionAction>(\"policy-execution-action\");\n"]}
@@ -0,0 +1,9 @@
1
+ // Copyright 2025 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { Factory } from "@twin.org/core";
4
+ /**
5
+ * Factory for managing policy information sources registration and retrieval.
6
+ */
7
+ // eslint-disable-next-line @typescript-eslint/naming-convention
8
+ export const PolicyInformationSourceFactory = Factory.createFactory("policy-information-source");
9
+ //# sourceMappingURL=policyInformationSourceFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policyInformationSourceFactory.js","sourceRoot":"","sources":["../../../src/factories/policyInformationSourceFactory.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzC;;GAEG;AACH,gEAAgE;AAChE,MAAM,CAAC,MAAM,8BAA8B,GAAG,OAAO,CAAC,aAAa,CAClE,2BAA2B,CAC3B,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { Factory } from \"@twin.org/core\";\nimport type { IPolicyInformationSource } from \"../models/pip/IPolicyInformationSource.js\";\n\n/**\n * Factory for managing policy information sources registration and retrieval.\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const PolicyInformationSourceFactory = Factory.createFactory<IPolicyInformationSource>(\n\t\"policy-information-source\"\n);\n"]}
@@ -0,0 +1,9 @@
1
+ // Copyright 2025 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { Factory } from "@twin.org/core";
4
+ /**
5
+ * Factory for managing policy negotiators registration and retrieval.
6
+ */
7
+ // eslint-disable-next-line @typescript-eslint/naming-convention
8
+ export const PolicyNegotiatorFactory = Factory.createFactory("policy-negotiator");
9
+ //# sourceMappingURL=policyNegotiatorFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policyNegotiatorFactory.js","sourceRoot":"","sources":["../../../src/factories/policyNegotiatorFactory.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzC;;GAEG;AACH,gEAAgE;AAChE,MAAM,CAAC,MAAM,uBAAuB,GACnC,OAAO,CAAC,aAAa,CAAoB,mBAAmB,CAAC,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { Factory } from \"@twin.org/core\";\nimport type { IPolicyNegotiator } from \"../models/pnp/IPolicyNegotiator.js\";\n\n/**\n * Factory for managing policy negotiators registration and retrieval.\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const PolicyNegotiatorFactory =\n\tFactory.createFactory<IPolicyNegotiator>(\"policy-negotiator\");\n"]}
@@ -0,0 +1,9 @@
1
+ // Copyright 2025 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { Factory } from "@twin.org/core";
4
+ /**
5
+ * Factory for managing policy requester registration and retrieval.
6
+ */
7
+ // eslint-disable-next-line @typescript-eslint/naming-convention
8
+ export const PolicyRequesterFactory = Factory.createFactory("policy-requester");
9
+ //# sourceMappingURL=policyRequesterFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policyRequesterFactory.js","sourceRoot":"","sources":["../../../src/factories/policyRequesterFactory.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGzC;;GAEG;AACH,gEAAgE;AAChE,MAAM,CAAC,MAAM,sBAAsB,GAAG,OAAO,CAAC,aAAa,CAAmB,kBAAkB,CAAC,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { Factory } from \"@twin.org/core\";\nimport type { IPolicyRequester } from \"../models/pnp/IPolicyRequester.js\";\n\n/**\n * Factory for managing policy requester registration and retrieval.\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const PolicyRequesterFactory = Factory.createFactory<IPolicyRequester>(\"policy-requester\");\n"]}
package/dist/es/index.js CHANGED
@@ -1,5 +1,12 @@
1
1
  // Copyright 2025 IOTA Stiftung.
2
2
  // SPDX-License-Identifier: Apache-2.0.
3
+ export * from "./factories/dataAccessHandlerFactory.js";
4
+ export * from "./factories/policyArbiterFactory.js";
5
+ export * from "./factories/policyEnforcementProcessorFactory.js";
6
+ export * from "./factories/policyExecutionActionFactory.js";
7
+ export * from "./factories/policyInformationSourceFactory.js";
8
+ export * from "./factories/policyNegotiatorFactory.js";
9
+ export * from "./factories/policyRequesterFactory.js";
3
10
  export * from "./models/api/dap/IDapCreateRequest.js";
4
11
  export * from "./models/api/dap/IDapGetRequest.js";
5
12
  export * from "./models/api/dap/IDapGetResponse.js";
@@ -31,7 +38,7 @@ export * from "./models/api/pnp/IPnpOfferRequest.js";
31
38
  export * from "./models/api/pnp/IPnpTerminateRequest.js";
32
39
  export * from "./models/dap/IDataAccessHandler.js";
33
40
  export * from "./models/dap/IDataAccessPointComponent.js";
34
- export * from "./models/dap/IDataAccessPointRequestComponent.js";
41
+ export * from "./models/dap/IDataAccessRequestPointComponent.js";
35
42
  export * from "./models/dap/jsonLd/IDataAccessQuery.js";
36
43
  export * from "./models/dap/jsonLd/IDataAccessQueryResponse.js";
37
44
  export * from "./models/dap/jsonLd/IDataAccessRequest.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,yCAAyC,CAAC;AACxD,cAAc,sCAAsC,CAAC;AACrD,cAAc,0CAA0C,CAAC;AACzD,cAAc,sDAAsD,CAAC;AACrE,cAAc,qDAAqD,CAAC;AACpE,cAAc,0CAA0C,CAAC;AACzD,cAAc,sCAAsC,CAAC;AACrD,cAAc,0CAA0C,CAAC;AACzD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,sCAAsC,CAAC;AACrD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,kDAAkD,CAAC;AACjE,cAAc,yCAAyC,CAAC;AACxD,cAAc,iDAAiD,CAAC;AAChE,cAAc,2CAA2C,CAAC;AAC1D,cAAc,qDAAqD,CAAC;AACpE,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qDAAqD,CAAC;AACpE,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qCAAqC,CAAC;AACpD,cAAc,kDAAkD,CAAC;AACjE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,oCAAoC,CAAC;AACnD,cAAc,yCAAyC,CAAC;AACxD,cAAc,kDAAkD,CAAC;AACjE,cAAc,0CAA0C,CAAC;AACzD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,iDAAiD,CAAC;AAChE,cAAc,oCAAoC,CAAC;AACnD,cAAc,uDAAuD,CAAC;AACtE,cAAc,kDAAkD,CAAC;AACjE,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,sCAAsC,CAAC;AACrD,cAAc,wCAAwC,CAAC;AACvD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nexport * from \"./models/api/dap/IDapCreateRequest.js\";\nexport * from \"./models/api/dap/IDapGetRequest.js\";\nexport * from \"./models/api/dap/IDapGetResponse.js\";\nexport * from \"./models/api/dap/IDapQueryRequest.js\";\nexport * from \"./models/api/dap/IDapQueryResponse.js\";\nexport * from \"./models/api/dap/IDapRemoveRequest.js\";\nexport * from \"./models/api/dap/IDapUpdateRequest.js\";\nexport * from \"./models/api/pap/IPapCreateRequest.js\";\nexport * from \"./models/api/pap/IPapGetRequest.js\";\nexport * from \"./models/api/pap/IPapGetResponse.js\";\nexport * from \"./models/api/pap/IPapQueryRequest.js\";\nexport * from \"./models/api/pap/IPapQueryResponse.js\";\nexport * from \"./models/api/pap/IPapRemoveRequest.js\";\nexport * from \"./models/api/pap/IPapUpdateRequest.js\";\nexport * from \"./models/api/pnap/IPnapGetRequest.js\";\nexport * from \"./models/api/pnap/IPnapGetResponse.js\";\nexport * from \"./models/api/pnap/IPnapQueryRequest.js\";\nexport * from \"./models/api/pnap/IPnapQueryResponse.js\";\nexport * from \"./models/api/pnap/IPnapRemoveRequest.js\";\nexport * from \"./models/api/pnap/IPnapSetRequest.js\";\nexport * from \"./models/api/pnp/IPnpAgreementRequest.js\";\nexport * from \"./models/api/pnp/IPnpAgreementVerificationRequest.js\";\nexport * from \"./models/api/pnp/IPnpContractNegotiationResponse.js\";\nexport * from \"./models/api/pnp/IPnpContractResponse.js\";\nexport * from \"./models/api/pnp/IPnpEventRequest.js\";\nexport * from \"./models/api/pnp/IPnpNegotiateRequest.js\";\nexport * from \"./models/api/pnp/IPnpNegotiationGetRequest.js\";\nexport * from \"./models/api/pnp/IPnpOfferRequest.js\";\nexport * from \"./models/api/pnp/IPnpTerminateRequest.js\";\nexport * from \"./models/dap/IDataAccessHandler.js\";\nexport * from \"./models/dap/IDataAccessPointComponent.js\";\nexport * from \"./models/dap/IDataAccessPointRequestComponent.js\";\nexport * from \"./models/dap/jsonLd/IDataAccessQuery.js\";\nexport * from \"./models/dap/jsonLd/IDataAccessQueryResponse.js\";\nexport * from \"./models/dap/jsonLd/IDataAccessRequest.js\";\nexport * from \"./models/dap/jsonLd/IDataAccessRequestWithObject.js\";\nexport * from \"./models/IPolicyLocator.js\";\nexport * from \"./models/pap/IPolicyAdministrationPointComponent.js\";\nexport * from \"./models/pdp/IPolicyArbiter.js\";\nexport * from \"./models/pdp/IPolicyDecision.js\";\nexport * from \"./models/pdp/IPolicyDecisionPointComponent.js\";\nexport * from \"./models/pdp/policyDecision.js\";\nexport * from \"./models/pdp/policyDecisionStage.js\";\nexport * from \"./models/pep/IPolicyEnforcementPointComponent.js\";\nexport * from \"./models/pep/IPolicyEnforcementProcessor.js\";\nexport * from \"./models/pip/IPolicyInformation.js\";\nexport * from \"./models/pip/IPolicyInformationItems.js\";\nexport * from \"./models/pip/IPolicyInformationPointComponent.js\";\nexport * from \"./models/pip/IPolicyInformationSource.js\";\nexport * from \"./models/pip/policyInformationAccessMode.js\";\nexport * from \"./models/pmp/IPolicyManagementPointComponent.js\";\nexport * from \"./models/pnp/IPolicyNegotiation.js\";\nexport * from \"./models/pnp/IPolicyNegotiationAdminPointComponent.js\";\nexport * from \"./models/pnp/IPolicyNegotiationPointComponent.js\";\nexport * from \"./models/pnp/IPolicyNegotiator.js\";\nexport * from \"./models/pnp/IPolicyRequester.js\";\nexport * from \"./models/pxp/IPolicyExecutionAction.js\";\nexport * from \"./models/pxp/IPolicyExecutionPointComponent.js\";\nexport * from \"./models/rightsManagementContexts.js\";\nexport * from \"./models/rightsManagementNamespaces.js\";\nexport * from \"./models/rightsManagementTypes.js\";\nexport * from \"./utils/locatorHelper.js\";\nexport * from \"./utils/odrlPolicyHelper.js\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,cAAc,yCAAyC,CAAC;AACxD,cAAc,qCAAqC,CAAC;AACpD,cAAc,kDAAkD,CAAC;AACjE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,wCAAwC,CAAC;AACvD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,yCAAyC,CAAC;AACxD,cAAc,sCAAsC,CAAC;AACrD,cAAc,0CAA0C,CAAC;AACzD,cAAc,sDAAsD,CAAC;AACrE,cAAc,qDAAqD,CAAC;AACpE,cAAc,0CAA0C,CAAC;AACzD,cAAc,sCAAsC,CAAC;AACrD,cAAc,0CAA0C,CAAC;AACzD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,sCAAsC,CAAC;AACrD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,kDAAkD,CAAC;AACjE,cAAc,yCAAyC,CAAC;AACxD,cAAc,iDAAiD,CAAC;AAChE,cAAc,2CAA2C,CAAC;AAC1D,cAAc,qDAAqD,CAAC;AACpE,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qDAAqD,CAAC;AACpE,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qCAAqC,CAAC;AACpD,cAAc,kDAAkD,CAAC;AACjE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,oCAAoC,CAAC;AACnD,cAAc,yCAAyC,CAAC;AACxD,cAAc,kDAAkD,CAAC;AACjE,cAAc,0CAA0C,CAAC;AACzD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,iDAAiD,CAAC;AAChE,cAAc,oCAAoC,CAAC;AACnD,cAAc,uDAAuD,CAAC;AACtE,cAAc,kDAAkD,CAAC;AACjE,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,sCAAsC,CAAC;AACrD,cAAc,wCAAwC,CAAC;AACvD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nexport * from \"./factories/dataAccessHandlerFactory.js\";\nexport * from \"./factories/policyArbiterFactory.js\";\nexport * from \"./factories/policyEnforcementProcessorFactory.js\";\nexport * from \"./factories/policyExecutionActionFactory.js\";\nexport * from \"./factories/policyInformationSourceFactory.js\";\nexport * from \"./factories/policyNegotiatorFactory.js\";\nexport * from \"./factories/policyRequesterFactory.js\";\nexport * from \"./models/api/dap/IDapCreateRequest.js\";\nexport * from \"./models/api/dap/IDapGetRequest.js\";\nexport * from \"./models/api/dap/IDapGetResponse.js\";\nexport * from \"./models/api/dap/IDapQueryRequest.js\";\nexport * from \"./models/api/dap/IDapQueryResponse.js\";\nexport * from \"./models/api/dap/IDapRemoveRequest.js\";\nexport * from \"./models/api/dap/IDapUpdateRequest.js\";\nexport * from \"./models/api/pap/IPapCreateRequest.js\";\nexport * from \"./models/api/pap/IPapGetRequest.js\";\nexport * from \"./models/api/pap/IPapGetResponse.js\";\nexport * from \"./models/api/pap/IPapQueryRequest.js\";\nexport * from \"./models/api/pap/IPapQueryResponse.js\";\nexport * from \"./models/api/pap/IPapRemoveRequest.js\";\nexport * from \"./models/api/pap/IPapUpdateRequest.js\";\nexport * from \"./models/api/pnap/IPnapGetRequest.js\";\nexport * from \"./models/api/pnap/IPnapGetResponse.js\";\nexport * from \"./models/api/pnap/IPnapQueryRequest.js\";\nexport * from \"./models/api/pnap/IPnapQueryResponse.js\";\nexport * from \"./models/api/pnap/IPnapRemoveRequest.js\";\nexport * from \"./models/api/pnap/IPnapSetRequest.js\";\nexport * from \"./models/api/pnp/IPnpAgreementRequest.js\";\nexport * from \"./models/api/pnp/IPnpAgreementVerificationRequest.js\";\nexport * from \"./models/api/pnp/IPnpContractNegotiationResponse.js\";\nexport * from \"./models/api/pnp/IPnpContractResponse.js\";\nexport * from \"./models/api/pnp/IPnpEventRequest.js\";\nexport * from \"./models/api/pnp/IPnpNegotiateRequest.js\";\nexport * from \"./models/api/pnp/IPnpNegotiationGetRequest.js\";\nexport * from \"./models/api/pnp/IPnpOfferRequest.js\";\nexport * from \"./models/api/pnp/IPnpTerminateRequest.js\";\nexport * from \"./models/dap/IDataAccessHandler.js\";\nexport * from \"./models/dap/IDataAccessPointComponent.js\";\nexport * from \"./models/dap/IDataAccessRequestPointComponent.js\";\nexport * from \"./models/dap/jsonLd/IDataAccessQuery.js\";\nexport * from \"./models/dap/jsonLd/IDataAccessQueryResponse.js\";\nexport * from \"./models/dap/jsonLd/IDataAccessRequest.js\";\nexport * from \"./models/dap/jsonLd/IDataAccessRequestWithObject.js\";\nexport * from \"./models/IPolicyLocator.js\";\nexport * from \"./models/pap/IPolicyAdministrationPointComponent.js\";\nexport * from \"./models/pdp/IPolicyArbiter.js\";\nexport * from \"./models/pdp/IPolicyDecision.js\";\nexport * from \"./models/pdp/IPolicyDecisionPointComponent.js\";\nexport * from \"./models/pdp/policyDecision.js\";\nexport * from \"./models/pdp/policyDecisionStage.js\";\nexport * from \"./models/pep/IPolicyEnforcementPointComponent.js\";\nexport * from \"./models/pep/IPolicyEnforcementProcessor.js\";\nexport * from \"./models/pip/IPolicyInformation.js\";\nexport * from \"./models/pip/IPolicyInformationItems.js\";\nexport * from \"./models/pip/IPolicyInformationPointComponent.js\";\nexport * from \"./models/pip/IPolicyInformationSource.js\";\nexport * from \"./models/pip/policyInformationAccessMode.js\";\nexport * from \"./models/pmp/IPolicyManagementPointComponent.js\";\nexport * from \"./models/pnp/IPolicyNegotiation.js\";\nexport * from \"./models/pnp/IPolicyNegotiationAdminPointComponent.js\";\nexport * from \"./models/pnp/IPolicyNegotiationPointComponent.js\";\nexport * from \"./models/pnp/IPolicyNegotiator.js\";\nexport * from \"./models/pnp/IPolicyRequester.js\";\nexport * from \"./models/pxp/IPolicyExecutionAction.js\";\nexport * from \"./models/pxp/IPolicyExecutionPointComponent.js\";\nexport * from \"./models/rightsManagementContexts.js\";\nexport * from \"./models/rightsManagementNamespaces.js\";\nexport * from \"./models/rightsManagementTypes.js\";\nexport * from \"./utils/locatorHelper.js\";\nexport * from \"./utils/odrlPolicyHelper.js\";\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IDataAccessHandler.js","sourceRoot":"","sources":["../../../../src/models/dap/IDataAccessHandler.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IJsonLdNodeObject } from \"@twin.org/data-json-ld\";\nimport type { EntityCondition } from \"@twin.org/entity\";\n\n/**\n * Interface describing a Data Access Handler.\n */\nexport interface IDataAccessHandler {\n\t/**\n\t * The asset types supported by this handler.\n\t * @returns The supported asset types.\n\t */\n\tsupportedAssetTypes(): string[];\n\n\t/**\n\t * Create an item.\n\t * @param assetType The type of the item to create.\n\t * @param item The item to create.\n\t * @returns The id of the item created, for some items this is supplied in the `item`.\n\t */\n\tcreate(assetType: string, item: IJsonLdNodeObject): Promise<string>;\n\n\t/**\n\t * Get an item.\n\t * @param assetType The type of the item to retrieve.\n\t * @param id The ID of the item to retrieve.\n\t * @returns The item retrieved if the policies allow it.\n\t */\n\tget(assetType: string, id: string): Promise<IJsonLdNodeObject>;\n\n\t/**\n\t * Update an item.\n\t * @param assetType The type of the item to update.\n\t * @param item The item to update.\n\t * @returns Nothing.\n\t */\n\tupdate(assetType: string, item: IJsonLdNodeObject): Promise<void>;\n\n\t/**\n\t * Remove an item.\n\t * @param assetType The type of the item to remove.\n\t * @param id The id of the item to remove.\n\t * @returns Nothing.\n\t */\n\tremove(assetType: string, id: string): Promise<void>;\n\n\t/**\n\t * Query for items.\n\t * @param assetType The type of the item to query.\n\t * @param conditions The conditions to apply to the query.\n\t * @param cursor The cursor for pagination.\n\t * @param options Additional options which might be supported by the handler.\n\t * @returns The items matching the query and cursor if there are more items.\n\t */\n\tquery(\n\t\tassetType: string,\n\t\tconditions: EntityCondition<IJsonLdNodeObject> | undefined,\n\t\tcursor: string | undefined,\n\t\toptions: unknown | undefined\n\t): Promise<{\n\t\titems: IJsonLdNodeObject[];\n\t\tcursor?: string;\n\t}>;\n}\n"]}
1
+ {"version":3,"file":"IDataAccessHandler.js","sourceRoot":"","sources":["../../../../src/models/dap/IDataAccessHandler.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IJsonLdNodeObject } from \"@twin.org/data-json-ld\";\nimport type { EntityCondition } from \"@twin.org/entity\";\n\n/**\n * Interface describing a Data Access Handler.\n */\nexport interface IDataAccessHandler extends IComponent {\n\t/**\n\t * The asset types supported by this handler.\n\t * @returns The supported asset types.\n\t */\n\tsupportedAssetTypes(): string[];\n\n\t/**\n\t * Create an item.\n\t * @param assetType The type of the item to create.\n\t * @param item The item to create.\n\t * @returns The id of the item created, for some items this is supplied in the `item`.\n\t */\n\tcreate(assetType: string, item: IJsonLdNodeObject): Promise<string>;\n\n\t/**\n\t * Get an item.\n\t * @param assetType The type of the item to retrieve.\n\t * @param id The ID of the item to retrieve.\n\t * @returns The item retrieved if the policies allow it.\n\t */\n\tget(assetType: string, id: string): Promise<IJsonLdNodeObject>;\n\n\t/**\n\t * Update an item.\n\t * @param assetType The type of the item to update.\n\t * @param item The item to update.\n\t * @returns Nothing.\n\t */\n\tupdate(assetType: string, item: IJsonLdNodeObject): Promise<void>;\n\n\t/**\n\t * Remove an item.\n\t * @param assetType The type of the item to remove.\n\t * @param id The id of the item to remove.\n\t * @returns Nothing.\n\t */\n\tremove(assetType: string, id: string): Promise<void>;\n\n\t/**\n\t * Query for items.\n\t * @param assetType The type of the item to query.\n\t * @param conditions The conditions to apply to the query.\n\t * @param cursor The cursor for pagination.\n\t * @param options Additional options which might be supported by the handler.\n\t * @returns The items matching the query and cursor if there are more items.\n\t */\n\tquery(\n\t\tassetType: string,\n\t\tconditions: EntityCondition<IJsonLdNodeObject> | undefined,\n\t\tcursor: string | undefined,\n\t\toptions: unknown | undefined\n\t): Promise<{\n\t\titems: IJsonLdNodeObject[];\n\t\tcursor?: string;\n\t}>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IDataAccessPointComponent.js","sourceRoot":"","sources":["../../../../src/models/dap/IDataAccessPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IJsonLdNodeObject } from \"@twin.org/data-json-ld\";\nimport type { EntityCondition } from \"@twin.org/entity\";\nimport type { IIdentityAuthenticationActionRequest } from \"@twin.org/identity-authentication\";\nimport type { IDataAccessHandler } from \"./IDataAccessHandler.js\";\n\n/**\n * Interface describing a Data Access Point (DAP) contract.\n * When receiving a request from another component, the DAP will perform\n * CRUD operations with enforcement of relevant policies using PEP.\n * The registered data handlers support specific asset types.\n */\nexport interface IDataAccessPointComponent extends IComponent {\n\t/**\n\t * Create an item.\n\t * @param assetType The type of the item to create.\n\t * @param item The item to create.\n\t * @param actionRequest The action request used in the verifiable credential.\n\t * @returns The id of the item created, for some items this is supplied in the `item`.\n\t */\n\tcreate(\n\t\tassetType: string,\n\t\titem: IJsonLdNodeObject,\n\t\tactionRequest: IIdentityAuthenticationActionRequest\n\t): Promise<string>;\n\n\t/**\n\t * Get an item.\n\t * @param assetType The type of the item to retrieve.\n\t * @param id The ID of the item to retrieve.\n\t * @param actionRequest The action request used in the verifiable credential.\n\t * @returns The item retrieved if the policies allow it.\n\t */\n\tget(\n\t\tassetType: string,\n\t\tid: string,\n\t\tactionRequest: IIdentityAuthenticationActionRequest\n\t): Promise<IJsonLdNodeObject>;\n\n\t/**\n\t * Update an item.\n\t * @param assetType The type of the item to update.\n\t * @param item The item to update.\n\t * @param actionRequest The action request used in the verifiable credential.\n\t * @returns Nothing.\n\t */\n\tupdate(\n\t\tassetType: string,\n\t\titem: IJsonLdNodeObject,\n\t\tactionRequest: IIdentityAuthenticationActionRequest\n\t): Promise<void>;\n\n\t/**\n\t * Remove an item.\n\t * @param assetType The type of the item to remove.\n\t * @param id The id of the item to remove.\n\t * @param actionRequest The action request used in the verifiable credential.\n\t * @returns Nothing.\n\t */\n\tremove(\n\t\tassetType: string,\n\t\tid: string,\n\t\tactionRequest: IIdentityAuthenticationActionRequest\n\t): Promise<void>;\n\n\t/**\n\t * Query for items.\n\t * @param assetType The type of the item to query.\n\t * @param conditions The conditions to apply to the query.\n\t * @param cursor The cursor for pagination.\n\t * @param options Additional options which might be supported by the handler.\n\t * @param actionRequest The action request used in the verifiable credential.\n\t * @returns The items matching the query and cursor if there are more items.\n\t */\n\tquery(\n\t\tassetType: string,\n\t\tconditions: EntityCondition<IJsonLdNodeObject> | undefined,\n\t\tcursor: string | undefined,\n\t\toptions: unknown | undefined,\n\t\tactionRequest: IIdentityAuthenticationActionRequest\n\t): Promise<{\n\t\titems: IJsonLdNodeObject[];\n\t\tcursor?: string;\n\t}>;\n\n\t/**\n\t * Register a handler to use for a specific asset type.\n\t * @param handlerId The id of the handler to register.\n\t * @param handler The handler to register.\n\t * @returns Nothing.\n\t */\n\tregisterHandler(handlerId: string, handler: IDataAccessHandler): Promise<void>;\n\n\t/**\n\t * Unregister a handler from the handling.\n\t * @param handlerId The id of the handler to unregister.\n\t * @returns Nothing.\n\t */\n\tunregisterHandler(handlerId: string): Promise<void>;\n}\n"]}
1
+ {"version":3,"file":"IDataAccessPointComponent.js","sourceRoot":"","sources":["../../../../src/models/dap/IDataAccessPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IJsonLdNodeObject } from \"@twin.org/data-json-ld\";\nimport type { EntityCondition } from \"@twin.org/entity\";\n\n/**\n * Interface describing a Data Access Point (DAP) contract.\n * When receiving a request from another component, the DAP will perform\n * CRUD operations with enforcement of relevant policies using PEP.\n * The registered data handlers support specific asset types.\n */\nexport interface IDataAccessPointComponent extends IComponent {\n\t/**\n\t * Create an item.\n\t * @param assetType The type of the item to create.\n\t * @param item The item to create.\n\t * @param trustPayload Trust payload to verify the requesters identity.\n\t * @returns The id of the item created, for some items this is supplied in the `item`.\n\t */\n\tcreate(assetType: string, item: IJsonLdNodeObject, trustPayload: unknown): Promise<string>;\n\n\t/**\n\t * Get an item.\n\t * @param assetType The type of the item to retrieve.\n\t * @param id The ID of the item to retrieve.\n\t * @param trustPayload Trust payload to verify the requesters identity.\n\t * @returns The item retrieved if the policies allow it.\n\t */\n\tget(assetType: string, id: string, trustPayload: unknown): Promise<IJsonLdNodeObject>;\n\n\t/**\n\t * Update an item.\n\t * @param assetType The type of the item to update.\n\t * @param item The item to update.\n\t * @param trustPayload Trust payload to verify the requesters identity.\n\t * @returns Nothing.\n\t */\n\tupdate(assetType: string, item: IJsonLdNodeObject, trustPayload: unknown): Promise<void>;\n\n\t/**\n\t * Remove an item.\n\t * @param assetType The type of the item to remove.\n\t * @param id The id of the item to remove.\n\t * @param trustPayload Trust payload to verify the requesters identity.\n\t * @returns Nothing.\n\t */\n\tremove(assetType: string, id: string, trustPayload: unknown): Promise<void>;\n\n\t/**\n\t * Query for items.\n\t * @param assetType The type of the item to query.\n\t * @param conditions The conditions to apply to the query.\n\t * @param cursor The cursor for pagination.\n\t * @param options Additional options which might be supported by the handler.\n\t * @param trustPayload Trust payload to verify the requesters identity.\n\t * @returns The items matching the query and cursor if there are more items.\n\t */\n\tquery(\n\t\tassetType: string,\n\t\tconditions: EntityCondition<IJsonLdNodeObject> | undefined,\n\t\tcursor: string | undefined,\n\t\toptions: unknown | undefined,\n\t\ttrustPayload: unknown\n\t): Promise<{\n\t\titems: IJsonLdNodeObject[];\n\t\tcursor?: string;\n\t}>;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IDataAccessRequestPointComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IDataAccessRequestPointComponent.js","sourceRoot":"","sources":["../../../../src/models/dap/IDataAccessRequestPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IJsonLdNodeObject } from \"@twin.org/data-json-ld\";\nimport type { EntityCondition } from \"@twin.org/entity\";\n\n/**\n * Interface describing a Data Access Request Point (DARP) contract.\n * The DARP component sends requests to the DAP for data access operations\n */\nexport interface IDataAccessRequestPointComponent extends IComponent {\n\t/**\n\t * Create an item.\n\t * @param url The URL of the data access point.\n\t * @param assetType The type of the item to create.\n\t * @param item The item to create.\n\t * @returns The id of the item created, for some items this is supplied in the `item`.\n\t */\n\tcreate(url: string, assetType: string, item: IJsonLdNodeObject): Promise<string>;\n\n\t/**\n\t * Get an item.\n\t * @param url The URL of the data access point.\n\t * @param assetType The type of the item to retrieve.\n\t * @param id The ID of the item to retrieve.\n\t * @returns The item retrieved if the policies allow it.\n\t */\n\tget(url: string, assetType: string, id: string): Promise<IJsonLdNodeObject>;\n\n\t/**\n\t * Update an item.\n\t * @param url The URL of the data access point.\n\t * @param assetType The type of the item to update.\n\t * @param item The item to update.\n\t * @returns Nothing.\n\t */\n\tupdate(url: string, assetType: string, item: IJsonLdNodeObject): Promise<void>;\n\n\t/**\n\t * Remove an item.\n\t * @param url The URL of the data access point.\n\t * @param assetType The type of the item to remove.\n\t * @param id The id of the item to remove.\n\t * @returns Nothing.\n\t */\n\tremove(url: string, assetType: string, id: string): Promise<void>;\n\n\t/**\n\t * Query for items.\n\t * @param url The URL of the data access point.\n\t * @param assetType The type of the item to query.\n\t * @param conditions The conditions to apply to the query.\n\t * @param cursor The cursor for pagination.\n\t * @param options Additional options which might be supported by the handler.\n\t * @returns The items matching the query and cursor if there are more items.\n\t */\n\tquery(\n\t\turl: string,\n\t\tassetType: string,\n\t\tconditions: EntityCondition<IJsonLdNodeObject> | undefined,\n\t\tcursor: string | undefined,\n\t\toptions: unknown | undefined\n\t): Promise<{\n\t\titems: IJsonLdNodeObject[];\n\t\tcursor?: string;\n\t}>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IPolicyArbiter.js","sourceRoot":"","sources":["../../../../src/models/pdp/IPolicyArbiter.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IOdrlPolicy } from \"@twin.org/standards-w3c-odrl\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\nimport type { IPolicyDecision } from \"./IPolicyDecision.js\";\nimport type { IPolicyInformation } from \"../pip/IPolicyInformation.js\";\n\n/**\n * Interface describing a Policy Arbiter.\n */\nexport interface IPolicyArbiter {\n\t/**\n\t * The policies supported by this arbiter.\n\t * @returns The supported policies, if empty can be used for all.\n\t */\n\tsupportedPolicies(): IPolicyLocator[];\n\n\t/**\n\t * Makes decisions regarding policy access to data.\n\t * @param locator The locator to find relevant policies.\n\t * @param information Information provided by the requester to determine if a policy can be created.\n\t * @param policies The policies that apply to the data.\n\t * @param data The data to make a decision on.\n\t * @returns The decisions about access to the data.\n\t */\n\tdecide<D = unknown>(\n\t\tlocator: IPolicyLocator,\n\t\tinformation?: IPolicyInformation,\n\t\tpolicies?: IOdrlPolicy[],\n\t\tdata?: D\n\t): Promise<IPolicyDecision[]>;\n}\n"]}
1
+ {"version":3,"file":"IPolicyArbiter.js","sourceRoot":"","sources":["../../../../src/models/pdp/IPolicyArbiter.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IOdrlPolicy } from \"@twin.org/standards-w3c-odrl\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\nimport type { IPolicyDecision } from \"./IPolicyDecision.js\";\nimport type { IPolicyInformation } from \"../pip/IPolicyInformation.js\";\n\n/**\n * Interface describing a Policy Arbiter.\n */\nexport interface IPolicyArbiter extends IComponent {\n\t/**\n\t * The policies supported by this arbiter.\n\t * @returns The supported policies, if empty can be used for all.\n\t */\n\tsupportedPolicies(): IPolicyLocator[];\n\n\t/**\n\t * Makes decisions regarding policy access to data.\n\t * @param locator The locator to find relevant policies.\n\t * @param information Information provided by the requester to determine if a policy can be created.\n\t * @param policies The policies that apply to the data.\n\t * @param data The data to make a decision on.\n\t * @returns The decisions about access to the data.\n\t */\n\tdecide<D = unknown>(\n\t\tlocator: IPolicyLocator,\n\t\tinformation?: IPolicyInformation,\n\t\tpolicies?: IOdrlPolicy[],\n\t\tdata?: D\n\t): Promise<IPolicyDecision[]>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IPolicyDecisionPointComponent.js","sourceRoot":"","sources":["../../../../src/models/pdp/IPolicyDecisionPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IPolicyArbiter } from \"./IPolicyArbiter.js\";\nimport type { IPolicyDecision } from \"./IPolicyDecision.js\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\n\n/**\n * Interface describing a Policy Decision Point (PDP) contract.\n * Decides if a party can be granted access to a resource, will retrieve policies\n * from the Policy Management Point (PMP) and any additional information from the\n * Policy Information Point (PIP). When a decision is made, the Policy Execution\n * Point (PEP) will execute any registered actions.\n */\nexport interface IPolicyDecisionPointComponent extends IComponent {\n\t/**\n\t * Evaluate requests from a Policy Enforcement Point (PEP).\n\t * Uses the Policy Management Point (PMP) to retrieve the policies and the\n\t * Policy Information Point (PIP) to retrieve additional information.\n\t * Executes any actions on the Policy Execution Point (PXP) before and after decision is made.\n\t * @param locator The locator to find relevant policies.\n\t * @param data The data to make a decision on.\n\t * @returns Returns the policy decisions which apply to the data so that the PEP\n\t * can manipulate the data accordingly.\n\t */\n\tevaluate<D = unknown>(locator: IPolicyLocator, data?: D): Promise<IPolicyDecision[]>;\n\n\t/**\n\t * Register an arbiter to use for making decisions.\n\t * @param arbiterId The id of the arbiter to register.\n\t * @param arbiter The arbiter to register.\n\t * @returns Nothing.\n\t */\n\tregisterArbiter(arbiterId: string, arbiter: IPolicyArbiter): Promise<void>;\n\n\t/**\n\t * Unregister an arbiter from making decisions.\n\t * @param arbiterId The id of the arbiter to unregister.\n\t * @returns Nothing.\n\t */\n\tunregisterArbiter(arbiterId: string): Promise<void>;\n}\n"]}
1
+ {"version":3,"file":"IPolicyDecisionPointComponent.js","sourceRoot":"","sources":["../../../../src/models/pdp/IPolicyDecisionPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IPolicyDecision } from \"./IPolicyDecision.js\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\n\n/**\n * Interface describing a Policy Decision Point (PDP) contract.\n * Decides if a party can be granted access to a resource, will retrieve policies\n * from the Policy Management Point (PMP) and any additional information from the\n * Policy Information Point (PIP). When a decision is made, the Policy Execution\n * Point (PEP) will execute any registered actions.\n */\nexport interface IPolicyDecisionPointComponent extends IComponent {\n\t/**\n\t * Evaluate requests from a Policy Enforcement Point (PEP).\n\t * Uses the Policy Management Point (PMP) to retrieve the policies and the\n\t * Policy Information Point (PIP) to retrieve additional information.\n\t * Executes any actions on the Policy Execution Point (PXP) before and after decision is made.\n\t * @param locator The locator to find relevant policies.\n\t * @param data The data to make a decision on.\n\t * @returns Returns the policy decisions which apply to the data so that the PEP\n\t * can manipulate the data accordingly.\n\t */\n\tevaluate<D = unknown>(locator: IPolicyLocator, data?: D): Promise<IPolicyDecision[]>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IPolicyEnforcementPointComponent.js","sourceRoot":"","sources":["../../../../src/models/pep/IPolicyEnforcementPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\nimport type { IPolicyEnforcementProcessor } from \"./IPolicyEnforcementProcessor.js\";\n\n/**\n * Interface describing a Policy Enforcement Point (PEP) contract.\n * Intercepts data and uses the Policy Decision Point (PDP) to make decisions on\n * access to a resource, based on the decision a manipulated data object can\n * be returned.\n */\nexport interface IPolicyEnforcementPointComponent extends IComponent {\n\t/**\n\t * Process the data using Policy Decision Point (PDP) and return the manipulated data.\n\t * @param locator The locator to find relevant policies.\n\t * @param data The data to process.\n\t * @returns The manipulated data with any policies applied.\n\t */\n\tintercept<D = unknown, R = D>(locator: IPolicyLocator, data?: D): Promise<R>;\n\n\t/**\n\t * Register a processor to use for handling data.\n\t * @param processorId The id of the processor to register.\n\t * @param processor The processor to register.\n\t * @returns Nothing.\n\t */\n\tregisterProcessor(processorId: string, processor: IPolicyEnforcementProcessor): Promise<void>;\n\n\t/**\n\t * Unregister a processor from the handling.\n\t * @param processorId The id of the processor to unregister.\n\t * @returns Nothing.\n\t */\n\tunregisterProcessor(processorId: string): Promise<void>;\n}\n"]}
1
+ {"version":3,"file":"IPolicyEnforcementPointComponent.js","sourceRoot":"","sources":["../../../../src/models/pep/IPolicyEnforcementPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\n\n/**\n * Interface describing a Policy Enforcement Point (PEP) contract.\n * Intercepts data and uses the Policy Decision Point (PDP) to make decisions on\n * access to a resource, based on the decision a manipulated data object can\n * be returned.\n */\nexport interface IPolicyEnforcementPointComponent extends IComponent {\n\t/**\n\t * Process the data using Policy Decision Point (PDP) and return the manipulated data.\n\t * @param locator The locator to find relevant policies.\n\t * @param data The data to process.\n\t * @returns The manipulated data with any policies applied.\n\t */\n\tintercept<D = unknown, R = D>(locator: IPolicyLocator, data?: D): Promise<R>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IPolicyEnforcementProcessor.js","sourceRoot":"","sources":["../../../../src/models/pep/IPolicyEnforcementProcessor.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\nimport type { IPolicyDecision } from \"../pdp/IPolicyDecision.js\";\n\n/**\n * Interface for policy enforcement processors.\n */\nexport interface IPolicyEnforcementProcessor {\n\t/**\n\t * Process the response from the policy decision point.\n\t * @param locator The locator to find relevant policies.\n\t * @param decisions The decisions made by the policy decision point.\n\t * @param data The data to process.\n\t * @returns The data after processing.\n\t */\n\tprocess<D = unknown, R = D>(\n\t\tlocator: IPolicyLocator,\n\t\tdecisions: IPolicyDecision[],\n\t\tdata?: D\n\t): Promise<R>;\n}\n"]}
1
+ {"version":3,"file":"IPolicyEnforcementProcessor.js","sourceRoot":"","sources":["../../../../src/models/pep/IPolicyEnforcementProcessor.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\nimport type { IPolicyDecision } from \"../pdp/IPolicyDecision.js\";\n\n/**\n * Interface for policy enforcement processors.\n */\nexport interface IPolicyEnforcementProcessor extends IComponent {\n\t/**\n\t * Process the response from the policy decision point.\n\t * @param locator The locator to find relevant policies.\n\t * @param decisions The decisions made by the policy decision point.\n\t * @param data The data to process.\n\t * @returns The data after processing.\n\t */\n\tprocess<D = unknown, R = D>(\n\t\tlocator: IPolicyLocator,\n\t\tdecisions: IPolicyDecision[],\n\t\tdata?: D\n\t): Promise<R>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IPolicyInformationPointComponent.js","sourceRoot":"","sources":["../../../../src/models/pip/IPolicyInformationPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IOdrlPolicy } from \"@twin.org/standards-w3c-odrl\";\nimport type { IPolicyInformation } from \"./IPolicyInformation.js\";\nimport type { IPolicyInformationSource } from \"./IPolicyInformationSource.js\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\nimport type { PolicyInformationAccessMode } from \"./policyInformationAccessMode.js\";\n\n/**\n * Interface describing a Policy Information Point (PEP) contract.\n * Provides additional information to the Policy Decision Point (PDP) when\n * it is making decisions.\n */\nexport interface IPolicyInformationPointComponent extends IComponent {\n\t/**\n\t * Retrieve additional information which is relevant in the PDP decision making.\n\t * @param locator The locator to find relevant policies.\n\t * @param accessMode The access mode to use for the retrieval.\n\t * @param policies The policies that apply to the data.\n\t * @param data The data to get any additional information for.\n\t * @returns Returns additional information based on the data and identities.\n\t */\n\tretrieve<D = unknown>(\n\t\tlocator: IPolicyLocator,\n\t\taccessMode: PolicyInformationAccessMode,\n\t\tpolicies?: IOdrlPolicy[],\n\t\tdata?: D\n\t): Promise<IPolicyInformation>;\n\n\t/**\n\t * Register a source to use for retrieval.\n\t * @param sourceId The id of the source to register.\n\t * @param source The source to register.\n\t * @returns Nothing.\n\t */\n\tregisterSource(sourceId: string, source: IPolicyInformationSource): Promise<void>;\n\n\t/**\n\t * Unregister a source from the retrieval.\n\t * @param sourceId The id of the source to unregister.\n\t * @returns Nothing.\n\t */\n\tunregisterSource(sourceId: string): Promise<void>;\n}\n"]}
1
+ {"version":3,"file":"IPolicyInformationPointComponent.js","sourceRoot":"","sources":["../../../../src/models/pip/IPolicyInformationPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IOdrlPolicy } from \"@twin.org/standards-w3c-odrl\";\nimport type { IPolicyInformation } from \"./IPolicyInformation.js\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\nimport type { PolicyInformationAccessMode } from \"./policyInformationAccessMode.js\";\n\n/**\n * Interface describing a Policy Information Point (PEP) contract.\n * Provides additional information to the Policy Decision Point (PDP) when\n * it is making decisions.\n */\nexport interface IPolicyInformationPointComponent extends IComponent {\n\t/**\n\t * Retrieve additional information which is relevant in the PDP decision making.\n\t * @param locator The locator to find relevant policies.\n\t * @param accessMode The access mode to use for the retrieval.\n\t * @param policies The policies that apply to the data.\n\t * @param data The data to get any additional information for.\n\t * @returns Returns additional information based on the data and identities.\n\t */\n\tretrieve<D = unknown>(\n\t\tlocator: IPolicyLocator,\n\t\taccessMode: PolicyInformationAccessMode,\n\t\tpolicies?: IOdrlPolicy[],\n\t\tdata?: D\n\t): Promise<IPolicyInformation>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IPolicyInformationSource.js","sourceRoot":"","sources":["../../../../src/models/pip/IPolicyInformationSource.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IOdrlPolicy } from \"@twin.org/standards-w3c-odrl\";\nimport type { IPolicyInformationItems } from \"./IPolicyInformationItems.js\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\nimport type { PolicyInformationAccessMode } from \"./policyInformationAccessMode.js\";\n\n/**\n * Interface for policy information sources.\n */\nexport interface IPolicyInformationSource {\n\t/**\n\t * Retrieve information from the sources.\n\t * @param locator The locator to find relevant policies.\n\t * @param accessMode The access mode to use for the retrieval.\n\t * @param policies The policies that apply to the data.\n\t * @param data The data to process.\n\t * @returns The objects containing relevant information or undefined if nothing relevant is found.\n\t */\n\tretrieve<D = unknown>(\n\t\tlocator: IPolicyLocator,\n\t\taccessMode: PolicyInformationAccessMode,\n\t\tpolicies?: IOdrlPolicy[],\n\t\tdata?: D\n\t): Promise<IPolicyInformationItems | undefined>;\n}\n"]}
1
+ {"version":3,"file":"IPolicyInformationSource.js","sourceRoot":"","sources":["../../../../src/models/pip/IPolicyInformationSource.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IOdrlPolicy } from \"@twin.org/standards-w3c-odrl\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\nimport type { IPolicyInformationItems } from \"./IPolicyInformationItems.js\";\nimport type { PolicyInformationAccessMode } from \"./policyInformationAccessMode.js\";\n\n/**\n * Interface for policy information sources.\n */\nexport interface IPolicyInformationSource extends IComponent {\n\t/**\n\t * Retrieve information from the sources.\n\t * @param locator The locator to find relevant policies.\n\t * @param accessMode The access mode to use for the retrieval.\n\t * @param policies The policies that apply to the data.\n\t * @param data The data to process.\n\t * @returns The objects containing relevant information or undefined if nothing relevant is found.\n\t */\n\tretrieve<D = unknown>(\n\t\tlocator: IPolicyLocator,\n\t\taccessMode: PolicyInformationAccessMode,\n\t\tpolicies?: IOdrlPolicy[],\n\t\tdata?: D\n\t): Promise<IPolicyInformationItems | undefined>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IPolicyNegotiationPointComponent.js","sourceRoot":"","sources":["../../../../src/models/pnp/IPolicyNegotiationPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IIdentityAuthenticationActionRequest } from \"@twin.org/identity-authentication\";\nimport type {\n\tIContractAgreementMessage,\n\tIContractAgreementVerificationMessage,\n\tIContractNegotiation,\n\tIContractNegotiationError,\n\tIContractNegotiationEventMessage,\n\tIContractNegotiationTerminationMessage,\n\tIContractOfferMessage,\n\tIContractRequestMessage\n} from \"@twin.org/standards-dataspace-protocol\";\nimport type { IOdrlOffer } from \"@twin.org/standards-w3c-odrl\";\nimport type { IPolicyNegotiator } from \"./IPolicyNegotiator.js\";\nimport type { IPolicyRequester } from \"./IPolicyRequester.js\";\n\n/**\n * Interface describing a Policy Negotiation Point (PNP) contract.\n * When receiving a request from another component, the PNP will negotiate the terms\n * of the request and determine the appropriate policies to create.\n * https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#negotiation-protocol\n */\nexport interface IPolicyNegotiationPointComponent extends IComponent {\n\t/**\n\t * Get the current state of the negotiation.\n\t * @param id The id of the negotiation to retrieve.\n\t * @param actionRequest The action request used in the verifiable credential.\n\t * @returns The current state of the negotiation or an error.\n\t */\n\tgetNegotiation(\n\t\tid: string,\n\t\tactionRequest: IIdentityAuthenticationActionRequest\n\t): Promise<IContractNegotiation | IContractNegotiationError>;\n\n\t/**\n\t * Send a request to a provider.\n\t * @param url The url of the provider to send the request to.\n\t * @param requesterId The id of the requester to use for the request, will use the registered requester to provide update.\n\t * @param odrlOfferId The id of the offer to request.\n\t * @returns The negotiation id.\n\t */\n\tsendRequestToProvider(url: string, requesterId: string, odrlOfferId: string): Promise<string>;\n\n\t/**\n\t * Processes an incoming request on a provider from a consumer.\n\t * @param message The negotiation request.\n\t * @param actionRequest The action request used in the verifiable credential.\n\t * @returns The current state of the contract negotiation or an error.\n\t */\n\trequestFromConsumer(\n\t\tmessage: IContractRequestMessage,\n\t\tactionRequest: IIdentityAuthenticationActionRequest\n\t): Promise<IContractNegotiation | IContractNegotiationError>;\n\n\t/**\n\t * An offer has been received by a consumer.\n\t * @param message The offer being received by the consumer.\n\t * @param actionRequest The action request used in the verifiable credential.\n\t * @returns The current state of the contract negotiation or an error.\n\t */\n\tofferFromProvider(\n\t\tmessage: IContractOfferMessage,\n\t\tactionRequest: IIdentityAuthenticationActionRequest\n\t): Promise<IContractNegotiation | IContractNegotiationError>;\n\n\t/**\n\t * An agreement has been received by a consumer.\n\t * @param message The agreement message to send.\n\t * @param actionRequest The action request used in the verifiable credential.\n\t * @returns The error if there is one.\n\t */\n\tagreementFromProvider(\n\t\tmessage: IContractAgreementMessage,\n\t\tactionRequest: IIdentityAuthenticationActionRequest\n\t): Promise<IContractNegotiationError | undefined>;\n\n\t/**\n\t * An agreement verification has been received by a provider.\n\t * @param message The agreement verification message to send.\n\t * @param actionRequest The action request used in the verifiable credential.\n\t * @returns The error if there is one.\n\t */\n\tagreementVerificationFromConsumer(\n\t\tmessage: IContractAgreementVerificationMessage,\n\t\tactionRequest: IIdentityAuthenticationActionRequest\n\t): Promise<IContractNegotiationError | undefined>;\n\n\t/**\n\t * An event has been received by the provider or consumer.\n\t * @param message The event message to send.\n\t * @param destination The destination is provider or consumer.\n\t * @param actionRequest The action request used in the verifiable credential.\n\t * @returns The error if there is one.\n\t */\n\tevent(\n\t\tmessage: IContractNegotiationEventMessage,\n\t\tdestination: \"provider\" | \"consumer\",\n\t\tactionRequest: IIdentityAuthenticationActionRequest\n\t): Promise<IContractNegotiationError | undefined>;\n\n\t/**\n\t * A termination message has been received by the provider or consumer.\n\t * @param message The termination message to send.\n\t * @param destination The destination is provider or consumer.\n\t * @param actionRequest The action request used in the verifiable credential.\n\t * @returns The error if there is one.\n\t */\n\tterminate(\n\t\tmessage: IContractNegotiationTerminationMessage,\n\t\tdestination: \"provider\" | \"consumer\",\n\t\tactionRequest: IIdentityAuthenticationActionRequest\n\t): Promise<IContractNegotiationError | undefined>;\n\n\t/**\n\t * Register a negotiator to use for handling data.\n\t * @param negotiatorId The id of the negotiator to register.\n\t * @param negotiator The negotiator to register.\n\t * @returns Nothing.\n\t */\n\tregisterNegotiator(negotiatorId: string, negotiator: IPolicyNegotiator): Promise<void>;\n\n\t/**\n\t * Unregister a negotiator from the handling.\n\t * @param negotiatorId The id of the negotiator to unregister.\n\t * @returns Nothing.\n\t */\n\tunregisterNegotiator(negotiatorId: string): Promise<void>;\n\n\t/**\n\t * Register a requester to use for handle returning offers.\n\t * @param requesterId The id of the requester to register.\n\t * @param requester The requester to register.\n\t * @returns Nothing.\n\t */\n\tregisterRequester(requesterId: string, requester: IPolicyRequester): Promise<void>;\n\n\t/**\n\t * Unregister a requester from the handling.\n\t * @param requesterId The id of the requester to unregister.\n\t * @returns Nothing.\n\t */\n\tunregisterRequester(requesterId: string): Promise<void>;\n\n\t/**\n\t * Register an offer available for negotiation.\n\t * @param offer The offer to register.\n\t * @returns Nothing.\n\t */\n\tregisterOffer(offer: IOdrlOffer): Promise<void>;\n\n\t/**\n\t * Unregister an offer.\n\t * @param offerId The id of the offer to unregister.\n\t * @returns Nothing.\n\t */\n\tunregisterOffer(offerId: string): Promise<void>;\n}\n"]}
1
+ {"version":3,"file":"IPolicyNegotiationPointComponent.js","sourceRoot":"","sources":["../../../../src/models/pnp/IPolicyNegotiationPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type {\n\tIContractAgreementMessage,\n\tIContractAgreementVerificationMessage,\n\tIContractNegotiation,\n\tIContractNegotiationError,\n\tIContractNegotiationEventMessage,\n\tIContractNegotiationTerminationMessage,\n\tIContractOfferMessage,\n\tIContractRequestMessage\n} from \"@twin.org/standards-dataspace-protocol\";\n\n/**\n * Interface describing a Policy Negotiation Point (PNP) contract.\n * When receiving a request from another component, the PNP will negotiate the terms\n * of the request and determine the appropriate policies to create.\n * https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1/#negotiation-protocol\n */\nexport interface IPolicyNegotiationPointComponent extends IComponent {\n\t/**\n\t * Get the current state of the negotiation.\n\t * @param id The id of the negotiation to retrieve.\n\t * @param trustPayload Trust payload to verify the requesters identity.\n\t * @returns The current state of the negotiation or an error.\n\t */\n\tgetNegotiation(\n\t\tid: string,\n\t\ttrustPayload: unknown\n\t): Promise<IContractNegotiation | IContractNegotiationError>;\n\n\t/**\n\t * Send a request to a provider.\n\t * @param url The url of the provider to send the request to.\n\t * @param requesterId The id of the requester to use for the request, will use the registered requester to provide update.\n\t * @param odrlOfferId The id of the offer to request.\n\t * @returns The negotiation id.\n\t */\n\tsendRequestToProvider(url: string, requesterId: string, odrlOfferId: string): Promise<string>;\n\n\t/**\n\t * Processes an incoming request on a provider from a consumer.\n\t * @param message The negotiation request.\n\t * @param trustPayload Trust payload to verify the requesters identity.\n\t * @returns The current state of the contract negotiation or an error.\n\t */\n\trequestFromConsumer(\n\t\tmessage: IContractRequestMessage,\n\t\ttrustPayload: unknown\n\t): Promise<IContractNegotiation | IContractNegotiationError>;\n\n\t/**\n\t * An offer has been received by a consumer.\n\t * @param message The offer being received by the consumer.\n\t * @param trustPayload Trust payload to verify the requesters identity.\n\t * @returns The current state of the contract negotiation or an error.\n\t */\n\tofferFromProvider(\n\t\tmessage: IContractOfferMessage,\n\t\ttrustPayload: unknown\n\t): Promise<IContractNegotiation | IContractNegotiationError>;\n\n\t/**\n\t * An agreement has been received by a consumer.\n\t * @param message The agreement message to send.\n\t * @param trustPayload Trust payload to verify the requesters identity.\n\t * @returns The error if there is one.\n\t */\n\tagreementFromProvider(\n\t\tmessage: IContractAgreementMessage,\n\t\ttrustPayload: unknown\n\t): Promise<IContractNegotiationError | undefined>;\n\n\t/**\n\t * An agreement verification has been received by a provider.\n\t * @param message The agreement verification message to send.\n\t * @param trustPayload Trust payload to verify the requesters identity.\n\t * @returns The error if there is one.\n\t */\n\tagreementVerificationFromConsumer(\n\t\tmessage: IContractAgreementVerificationMessage,\n\t\ttrustPayload: unknown\n\t): Promise<IContractNegotiationError | undefined>;\n\n\t/**\n\t * An event has been received by the provider or consumer.\n\t * @param message The event message to send.\n\t * @param destination The destination is provider or consumer.\n\t * @param trustPayload Trust payload to verify the requesters identity.\n\t * @returns The error if there is one.\n\t */\n\tevent(\n\t\tmessage: IContractNegotiationEventMessage,\n\t\tdestination: \"provider\" | \"consumer\",\n\t\ttrustPayload: unknown\n\t): Promise<IContractNegotiationError | undefined>;\n\n\t/**\n\t * A termination message has been received by the provider or consumer.\n\t * @param message The termination message to send.\n\t * @param destination The destination is provider or consumer.\n\t * @param trustPayload Trust payload to verify the requesters identity.\n\t * @returns The error if there is one.\n\t */\n\tterminate(\n\t\tmessage: IContractNegotiationTerminationMessage,\n\t\tdestination: \"provider\" | \"consumer\",\n\t\ttrustPayload: unknown\n\t): Promise<IContractNegotiationError | undefined>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IPolicyNegotiator.js","sourceRoot":"","sources":["../../../../src/models/pnp/IPolicyNegotiator.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IOdrlAgreement, IOdrlOffer } from \"@twin.org/standards-w3c-odrl\";\nimport type { IPolicyInformation } from \"../pip/IPolicyInformation.js\";\n\n/**\n * Interface describing a Policy Negotiator.\n */\nexport interface IPolicyNegotiator {\n\t/**\n\t * Determines if the negotiator supports the given offer.\n\t * @param offer The offer to check.\n\t * @returns Sets the supports flag if it can be offered, and the interventionRequired flag if manual agreement is needed.\n\t */\n\tsupportsOffer(offer: IOdrlOffer): boolean;\n\n\t/**\n\t * Handle the offer.\n\t * @param offer The offer to check.\n\t * @param information Information provided by the requester to determine if a policy can be created.\n\t * @returns Sets the accepted flag if it can be offered, and the interventionRequired flag if manual agreement is needed.\n\t */\n\thandleOffer(\n\t\toffer: IOdrlOffer,\n\t\tinformation?: IPolicyInformation\n\t): Promise<{\n\t\taccepted: boolean;\n\t\tinterventionRequired: boolean;\n\t}>;\n\n\t/**\n\t * Create an agreement based on the offer.\n\t * @param offer The offer to create the agreement from.\n\t * @param information Information provided by the requester to aid in the creation of the agreement.\n\t * @returns The agreement created from the offer or undefined if an agreement could not be created.\n\t */\n\tcreateAgreement(\n\t\toffer: IOdrlOffer,\n\t\tinformation?: IPolicyInformation\n\t): Promise<IOdrlAgreement | undefined>;\n}\n"]}
1
+ {"version":3,"file":"IPolicyNegotiator.js","sourceRoot":"","sources":["../../../../src/models/pnp/IPolicyNegotiator.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IOdrlAgreement, IOdrlOffer } from \"@twin.org/standards-w3c-odrl\";\nimport type { IPolicyInformation } from \"../pip/IPolicyInformation.js\";\n\n/**\n * Interface describing a Policy Negotiator.\n */\nexport interface IPolicyNegotiator extends IComponent {\n\t/**\n\t * Determines if the negotiator supports the given offer.\n\t * @param offer The offer to check.\n\t * @returns Sets the supports flag if it can be offered, and the interventionRequired flag if manual agreement is needed.\n\t */\n\tsupportsOffer(offer: IOdrlOffer): boolean;\n\n\t/**\n\t * Handle the offer.\n\t * @param offer The offer to check.\n\t * @param information Information provided by the requester to determine if a policy can be created.\n\t * @returns Sets the accepted flag if it can be offered, and the interventionRequired flag if manual agreement is needed.\n\t */\n\thandleOffer(\n\t\toffer: IOdrlOffer,\n\t\tinformation?: IPolicyInformation\n\t): Promise<{\n\t\taccepted: boolean;\n\t\tinterventionRequired: boolean;\n\t}>;\n\n\t/**\n\t * Create an agreement based on the offer.\n\t * @param offer The offer to create the agreement from.\n\t * @param information Information provided by the requester to aid in the creation of the agreement.\n\t * @returns The agreement created from the offer or undefined if an agreement could not be created.\n\t */\n\tcreateAgreement(\n\t\toffer: IOdrlOffer,\n\t\tinformation?: IPolicyInformation\n\t): Promise<IOdrlAgreement | undefined>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IPolicyRequester.js","sourceRoot":"","sources":["../../../../src/models/pnp/IPolicyRequester.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IOdrlAgreement, IOdrlOffer } from \"@twin.org/standards-w3c-odrl\";\n\n/**\n * Interface describing a Policy Requester.\n */\nexport interface IPolicyRequester {\n\t/**\n\t * A policy has been offered by a provider, let the requester know about it.\n\t * @param negotiationId The id of the negotiation.\n\t * @param offer The offer sent by the provider.\n\t * @returns True if the offer was accepted, false otherwise.\n\t */\n\toffer(negotiationId: string, offer: IOdrlOffer): Promise<boolean>;\n\n\t/**\n\t * A policy agreement has been sent by a provider, let the requester know about it.\n\t * @param negotiationId The id of the negotiation.\n\t * @param agreement The agreement sent by the provider.\n\t * @returns True if the agreement was accepted, false otherwise.\n\t */\n\tagreement(negotiationId: string, agreement: IOdrlAgreement): Promise<boolean>;\n\n\t/**\n\t * A policy finalisation has been sent by a provider, let the requester know about it.\n\t * @param negotiationId The id of the negotiation.\n\t * @returns Nothing.\n\t */\n\tfinalised(negotiationId: string): Promise<void>;\n\n\t/**\n\t * A policy termination has been sent by a provider, let the requester know about it.\n\t * @param negotiationId The id of the negotiation.\n\t * @returns Nothing.\n\t */\n\tterminated(negotiationId: string): Promise<void>;\n}\n"]}
1
+ {"version":3,"file":"IPolicyRequester.js","sourceRoot":"","sources":["../../../../src/models/pnp/IPolicyRequester.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IOdrlAgreement, IOdrlOffer } from \"@twin.org/standards-w3c-odrl\";\n\n/**\n * Interface describing a Policy Requester.\n */\nexport interface IPolicyRequester extends IComponent {\n\t/**\n\t * The unique id of the requester.\n\t * @returns The requester id.\n\t */\n\trequesterId(): string;\n\n\t/**\n\t * A policy has been offered by a provider, let the requester know about it.\n\t * @param negotiationId The id of the negotiation.\n\t * @param offer The offer sent by the provider.\n\t * @returns True if the offer was accepted, false otherwise.\n\t */\n\toffer(negotiationId: string, offer: IOdrlOffer): Promise<boolean>;\n\n\t/**\n\t * A policy agreement has been sent by a provider, let the requester know about it.\n\t * @param negotiationId The id of the negotiation.\n\t * @param agreement The agreement sent by the provider.\n\t * @returns True if the agreement was accepted, false otherwise.\n\t */\n\tagreement(negotiationId: string, agreement: IOdrlAgreement): Promise<boolean>;\n\n\t/**\n\t * A policy finalisation has been sent by a provider, let the requester know about it.\n\t * @param negotiationId The id of the negotiation.\n\t * @returns Nothing.\n\t */\n\tfinalised(negotiationId: string): Promise<void>;\n\n\t/**\n\t * A policy termination has been sent by a provider, let the requester know about it.\n\t * @param negotiationId The id of the negotiation.\n\t * @returns Nothing.\n\t */\n\tterminated(negotiationId: string): Promise<void>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IPolicyExecutionAction.js","sourceRoot":"","sources":["../../../../src/models/pxp/IPolicyExecutionAction.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IOdrlPolicy } from \"@twin.org/standards-w3c-odrl\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\nimport type { IPolicyDecision } from \"../pdp/IPolicyDecision.js\";\nimport type { PolicyDecisionStage } from \"../pdp/policyDecisionStage.js\";\n\n/**\n * Interface for policy execution actions.\n */\nexport interface IPolicyExecutionAction {\n\t/**\n\t * Which stages should the action be executed at.\n\t * @returns List of stages.\n\t */\n\tsupportedStages(): PolicyDecisionStage[];\n\n\t/**\n\t * Execute function type for policy actions.\n\t * @param stage The stage of the policy decision.\n\t * @param locator The locator to find relevant policies.\n\t * @param policies The policies that apply to the data.\n\t * @param decisions The decisions made by the PDP.\n\t * @param data The data to process.\n\t * @returns A promise that resolves when the action is complete.\n\t */\n\texecute<D = unknown>(\n\t\tstage: PolicyDecisionStage,\n\t\tlocator: IPolicyLocator,\n\t\tpolicies?: IOdrlPolicy[],\n\t\tdecisions?: IPolicyDecision[],\n\t\tdata?: D\n\t): Promise<void>;\n}\n"]}
1
+ {"version":3,"file":"IPolicyExecutionAction.js","sourceRoot":"","sources":["../../../../src/models/pxp/IPolicyExecutionAction.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IOdrlPolicy } from \"@twin.org/standards-w3c-odrl\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\nimport type { IPolicyDecision } from \"../pdp/IPolicyDecision.js\";\nimport type { PolicyDecisionStage } from \"../pdp/policyDecisionStage.js\";\n\n/**\n * Interface for policy execution actions.\n */\nexport interface IPolicyExecutionAction extends IComponent {\n\t/**\n\t * Which stages should the action be executed at.\n\t * @returns List of stages.\n\t */\n\tsupportedStages(): PolicyDecisionStage[];\n\n\t/**\n\t * Execute function type for policy actions.\n\t * @param stage The stage of the policy decision.\n\t * @param locator The locator to find relevant policies.\n\t * @param policies The policies that apply to the data.\n\t * @param decisions The decisions made by the PDP.\n\t * @param data The data to process.\n\t * @returns A promise that resolves when the action is complete.\n\t */\n\texecute<D = unknown>(\n\t\tstage: PolicyDecisionStage,\n\t\tlocator: IPolicyLocator,\n\t\tpolicies?: IOdrlPolicy[],\n\t\tdecisions?: IPolicyDecision[],\n\t\tdata?: D\n\t): Promise<void>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IPolicyExecutionPointComponent.js","sourceRoot":"","sources":["../../../../src/models/pxp/IPolicyExecutionPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IOdrlPolicy } from \"@twin.org/standards-w3c-odrl\";\nimport type { IPolicyExecutionAction } from \"./IPolicyExecutionAction.js\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\nimport type { IPolicyDecision } from \"../pdp/IPolicyDecision.js\";\nimport type { PolicyDecisionStage } from \"../pdp/policyDecisionStage.js\";\n\n/**\n * Interface describing a Policy Execution Point (PXP) contract.\n * When a decision is made by the Policy Decision Point (PDP),\n * the Policy Execution Point (PXP) will execute any\n * registered actions based on the decision.\n */\nexport interface IPolicyExecutionPointComponent extends IComponent {\n\t/**\n\t * Execute actions based on the PDP's decisions.\n\t * @param stage The stage at which the PXP is executed in the PDP.\n\t * @param locator The locator to find relevant policies.\n\t * @param policies The policies that apply to the data.\n\t * @param decisions The decisions made by the PDP.\n\t * @param data The data used in the decision by the PDP.\n\t * @returns Nothing.\n\t */\n\texecuteActions<D = unknown>(\n\t\tstage: PolicyDecisionStage,\n\t\tlocator: IPolicyLocator,\n\t\tpolicies?: IOdrlPolicy[],\n\t\tdecisions?: IPolicyDecision[],\n\t\tdata?: D\n\t): Promise<void>;\n\n\t/**\n\t * Register an action to be executed.\n\t * @param actionId The id of the action to register.\n\t * @param stage The stage at which the action should be executed.\n\t * @param action The action to execute.\n\t * @returns Nothing.\n\t */\n\tregisterAction(\n\t\tactionId: string,\n\t\tstage: PolicyDecisionStage,\n\t\taction: IPolicyExecutionAction\n\t): Promise<void>;\n\n\t/**\n\t * Unregister an action from the execution point.\n\t * @param actionId The id of the action to unregister.\n\t * @param stage The stage at which the action was executed.\n\t * @returns Nothing.\n\t */\n\tunregisterAction(actionId: string, stage: PolicyDecisionStage): Promise<void>;\n}\n"]}
1
+ {"version":3,"file":"IPolicyExecutionPointComponent.js","sourceRoot":"","sources":["../../../../src/models/pxp/IPolicyExecutionPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IOdrlPolicy } from \"@twin.org/standards-w3c-odrl\";\nimport type { IPolicyLocator } from \"../IPolicyLocator.js\";\nimport type { IPolicyDecision } from \"../pdp/IPolicyDecision.js\";\nimport type { PolicyDecisionStage } from \"../pdp/policyDecisionStage.js\";\n\n/**\n * Interface describing a Policy Execution Point (PXP) contract.\n * When a decision is made by the Policy Decision Point (PDP),\n * the Policy Execution Point (PXP) will execute any\n * registered actions based on the decision.\n */\nexport interface IPolicyExecutionPointComponent extends IComponent {\n\t/**\n\t * Execute actions based on the PDP's decisions.\n\t * @param stage The stage at which the PXP is executed in the PDP.\n\t * @param locator The locator to find relevant policies.\n\t * @param policies The policies that apply to the data.\n\t * @param decisions The decisions made by the PDP.\n\t * @param data The data used in the decision by the PDP.\n\t * @returns Nothing.\n\t */\n\texecuteActions<D = unknown>(\n\t\tstage: PolicyDecisionStage,\n\t\tlocator: IPolicyLocator,\n\t\tpolicies?: IOdrlPolicy[],\n\t\tdecisions?: IPolicyDecision[],\n\t\tdata?: D\n\t): Promise<void>;\n}\n"]}
@@ -0,0 +1,6 @@
1
+ import { Factory } from "@twin.org/core";
2
+ import type { IDataAccessHandler } from "../models/dap/IDataAccessHandler.js";
3
+ /**
4
+ * Factory for managing data access handlers registration and retrieval.
5
+ */
6
+ export declare const DataAccessHandlerFactory: Factory<IDataAccessHandler>;
@@ -0,0 +1,6 @@
1
+ import { Factory } from "@twin.org/core";
2
+ import type { IPolicyArbiter } from "../models/pdp/IPolicyArbiter.js";
3
+ /**
4
+ * Factory for managing policy arbiters registration and retrieval.
5
+ */
6
+ export declare const PolicyArbiterFactory: Factory<IPolicyArbiter>;
@@ -0,0 +1,6 @@
1
+ import { Factory } from "@twin.org/core";
2
+ import type { IPolicyEnforcementProcessor } from "../models/pep/IPolicyEnforcementProcessor.js";
3
+ /**
4
+ * Factory for managing policy enforcement processors registration and retrieval.
5
+ */
6
+ export declare const PolicyEnforcementProcessorFactory: Factory<IPolicyEnforcementProcessor>;
@@ -0,0 +1,6 @@
1
+ import { Factory } from "@twin.org/core";
2
+ import type { IPolicyExecutionAction } from "../models/pxp/IPolicyExecutionAction.js";
3
+ /**
4
+ * Factory for managing policy execution action registration and retrieval.
5
+ */
6
+ export declare const PolicyExecutionActionFactory: Factory<IPolicyExecutionAction>;
@@ -0,0 +1,6 @@
1
+ import { Factory } from "@twin.org/core";
2
+ import type { IPolicyInformationSource } from "../models/pip/IPolicyInformationSource.js";
3
+ /**
4
+ * Factory for managing policy information sources registration and retrieval.
5
+ */
6
+ export declare const PolicyInformationSourceFactory: Factory<IPolicyInformationSource>;
@@ -0,0 +1,6 @@
1
+ import { Factory } from "@twin.org/core";
2
+ import type { IPolicyNegotiator } from "../models/pnp/IPolicyNegotiator.js";
3
+ /**
4
+ * Factory for managing policy negotiators registration and retrieval.
5
+ */
6
+ export declare const PolicyNegotiatorFactory: Factory<IPolicyNegotiator>;
@@ -0,0 +1,6 @@
1
+ import { Factory } from "@twin.org/core";
2
+ import type { IPolicyRequester } from "../models/pnp/IPolicyRequester.js";
3
+ /**
4
+ * Factory for managing policy requester registration and retrieval.
5
+ */
6
+ export declare const PolicyRequesterFactory: Factory<IPolicyRequester>;
@@ -1,3 +1,10 @@
1
+ export * from "./factories/dataAccessHandlerFactory.js";
2
+ export * from "./factories/policyArbiterFactory.js";
3
+ export * from "./factories/policyEnforcementProcessorFactory.js";
4
+ export * from "./factories/policyExecutionActionFactory.js";
5
+ export * from "./factories/policyInformationSourceFactory.js";
6
+ export * from "./factories/policyNegotiatorFactory.js";
7
+ export * from "./factories/policyRequesterFactory.js";
1
8
  export * from "./models/api/dap/IDapCreateRequest.js";
2
9
  export * from "./models/api/dap/IDapGetRequest.js";
3
10
  export * from "./models/api/dap/IDapGetResponse.js";
@@ -29,7 +36,7 @@ export * from "./models/api/pnp/IPnpOfferRequest.js";
29
36
  export * from "./models/api/pnp/IPnpTerminateRequest.js";
30
37
  export * from "./models/dap/IDataAccessHandler.js";
31
38
  export * from "./models/dap/IDataAccessPointComponent.js";
32
- export * from "./models/dap/IDataAccessPointRequestComponent.js";
39
+ export * from "./models/dap/IDataAccessRequestPointComponent.js";
33
40
  export * from "./models/dap/jsonLd/IDataAccessQuery.js";
34
41
  export * from "./models/dap/jsonLd/IDataAccessQueryResponse.js";
35
42
  export * from "./models/dap/jsonLd/IDataAccessRequest.js";
@@ -1,9 +1,10 @@
1
+ import type { IComponent } from "@twin.org/core";
1
2
  import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
2
3
  import type { EntityCondition } from "@twin.org/entity";
3
4
  /**
4
5
  * Interface describing a Data Access Handler.
5
6
  */
6
- export interface IDataAccessHandler {
7
+ export interface IDataAccessHandler extends IComponent {
7
8
  /**
8
9
  * The asset types supported by this handler.
9
10
  * @returns The supported asset types.
@@ -1,8 +1,6 @@
1
1
  import type { IComponent } from "@twin.org/core";
2
2
  import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
3
3
  import type { EntityCondition } from "@twin.org/entity";
4
- import type { IIdentityAuthenticationActionRequest } from "@twin.org/identity-authentication";
5
- import type { IDataAccessHandler } from "./IDataAccessHandler.js";
6
4
  /**
7
5
  * Interface describing a Data Access Point (DAP) contract.
8
6
  * When receiving a request from another component, the DAP will perform
@@ -14,58 +12,45 @@ export interface IDataAccessPointComponent extends IComponent {
14
12
  * Create an item.
15
13
  * @param assetType The type of the item to create.
16
14
  * @param item The item to create.
17
- * @param actionRequest The action request used in the verifiable credential.
15
+ * @param trustPayload Trust payload to verify the requesters identity.
18
16
  * @returns The id of the item created, for some items this is supplied in the `item`.
19
17
  */
20
- create(assetType: string, item: IJsonLdNodeObject, actionRequest: IIdentityAuthenticationActionRequest): Promise<string>;
18
+ create(assetType: string, item: IJsonLdNodeObject, trustPayload: unknown): Promise<string>;
21
19
  /**
22
20
  * Get an item.
23
21
  * @param assetType The type of the item to retrieve.
24
22
  * @param id The ID of the item to retrieve.
25
- * @param actionRequest The action request used in the verifiable credential.
23
+ * @param trustPayload Trust payload to verify the requesters identity.
26
24
  * @returns The item retrieved if the policies allow it.
27
25
  */
28
- get(assetType: string, id: string, actionRequest: IIdentityAuthenticationActionRequest): Promise<IJsonLdNodeObject>;
26
+ get(assetType: string, id: string, trustPayload: unknown): Promise<IJsonLdNodeObject>;
29
27
  /**
30
28
  * Update an item.
31
29
  * @param assetType The type of the item to update.
32
30
  * @param item The item to update.
33
- * @param actionRequest The action request used in the verifiable credential.
31
+ * @param trustPayload Trust payload to verify the requesters identity.
34
32
  * @returns Nothing.
35
33
  */
36
- update(assetType: string, item: IJsonLdNodeObject, actionRequest: IIdentityAuthenticationActionRequest): Promise<void>;
34
+ update(assetType: string, item: IJsonLdNodeObject, trustPayload: unknown): Promise<void>;
37
35
  /**
38
36
  * Remove an item.
39
37
  * @param assetType The type of the item to remove.
40
38
  * @param id The id of the item to remove.
41
- * @param actionRequest The action request used in the verifiable credential.
39
+ * @param trustPayload Trust payload to verify the requesters identity.
42
40
  * @returns Nothing.
43
41
  */
44
- remove(assetType: string, id: string, actionRequest: IIdentityAuthenticationActionRequest): Promise<void>;
42
+ remove(assetType: string, id: string, trustPayload: unknown): Promise<void>;
45
43
  /**
46
44
  * Query for items.
47
45
  * @param assetType The type of the item to query.
48
46
  * @param conditions The conditions to apply to the query.
49
47
  * @param cursor The cursor for pagination.
50
48
  * @param options Additional options which might be supported by the handler.
51
- * @param actionRequest The action request used in the verifiable credential.
49
+ * @param trustPayload Trust payload to verify the requesters identity.
52
50
  * @returns The items matching the query and cursor if there are more items.
53
51
  */
54
- query(assetType: string, conditions: EntityCondition<IJsonLdNodeObject> | undefined, cursor: string | undefined, options: unknown | undefined, actionRequest: IIdentityAuthenticationActionRequest): Promise<{
52
+ query(assetType: string, conditions: EntityCondition<IJsonLdNodeObject> | undefined, cursor: string | undefined, options: unknown | undefined, trustPayload: unknown): Promise<{
55
53
  items: IJsonLdNodeObject[];
56
54
  cursor?: string;
57
55
  }>;
58
- /**
59
- * Register a handler to use for a specific asset type.
60
- * @param handlerId The id of the handler to register.
61
- * @param handler The handler to register.
62
- * @returns Nothing.
63
- */
64
- registerHandler(handlerId: string, handler: IDataAccessHandler): Promise<void>;
65
- /**
66
- * Unregister a handler from the handling.
67
- * @param handlerId The id of the handler to unregister.
68
- * @returns Nothing.
69
- */
70
- unregisterHandler(handlerId: string): Promise<void>;
71
56
  }
@@ -3,8 +3,7 @@ import type { IJsonLdNodeObject } from "@twin.org/data-json-ld";
3
3
  import type { EntityCondition } from "@twin.org/entity";
4
4
  /**
5
5
  * Interface describing a Data Access Request Point (DARP) contract.
6
- * The DARP component sends requests to the DAP for data access operations,
7
- * it will create proofs for the requests.
6
+ * The DARP component sends requests to the DAP for data access operations
8
7
  */
9
8
  export interface IDataAccessRequestPointComponent extends IComponent {
10
9
  /**
@@ -1,3 +1,4 @@
1
+ import type { IComponent } from "@twin.org/core";
1
2
  import type { IOdrlPolicy } from "@twin.org/standards-w3c-odrl";
2
3
  import type { IPolicyLocator } from "../IPolicyLocator.js";
3
4
  import type { IPolicyDecision } from "./IPolicyDecision.js";
@@ -5,7 +6,7 @@ import type { IPolicyInformation } from "../pip/IPolicyInformation.js";
5
6
  /**
6
7
  * Interface describing a Policy Arbiter.
7
8
  */
8
- export interface IPolicyArbiter {
9
+ export interface IPolicyArbiter extends IComponent {
9
10
  /**
10
11
  * The policies supported by this arbiter.
11
12
  * @returns The supported policies, if empty can be used for all.