@twin.org/rights-management-models 0.0.3-next.56 → 0.0.3-next.58
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.
- package/dist/es/index.js +1 -0
- package/dist/es/index.js.map +1 -1
- package/dist/es/models/pap/IPolicyAdministrationPointComponent.js.map +1 -1
- package/dist/es/models/pap/IPolicyLocator.js +2 -0
- package/dist/es/models/pap/IPolicyLocator.js.map +1 -0
- package/dist/es/models/pmp/IPolicyManagementPointComponent.js.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/models/pap/IPolicyAdministrationPointComponent.d.ts +3 -11
- package/dist/types/models/pap/IPolicyLocator.d.ts +26 -0
- package/dist/types/models/pmp/IPolicyManagementPointComponent.d.ts +3 -11
- package/docs/changelog.md +14 -0
- package/docs/reference/index.md +1 -0
- package/docs/reference/interfaces/IPolicyAdministrationPointComponent.md +4 -26
- package/docs/reference/interfaces/IPolicyLocator.md +43 -0
- package/docs/reference/interfaces/IPolicyManagementPointComponent.md +4 -26
- package/package.json +1 -1
package/dist/es/index.js
CHANGED
|
@@ -45,6 +45,7 @@ export * from "./models/IRightsManagementPolicyTrust.js";
|
|
|
45
45
|
export * from "./models/IRightsManagementSet.js";
|
|
46
46
|
export * from "./models/odrlProfiles.js";
|
|
47
47
|
export * from "./models/pap/IPolicyAdministrationPointComponent.js";
|
|
48
|
+
export * from "./models/pap/IPolicyLocator.js";
|
|
48
49
|
export * from "./models/pdp/IPolicyArbiter.js";
|
|
49
50
|
export * from "./models/pdp/IPolicyDecision.js";
|
|
50
51
|
export * from "./models/pdp/IPolicyDecisionPointComponent.js";
|
package/dist/es/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,cAAc,qCAAqC,CAAC;AACpD,cAAc,kDAAkD,CAAC;AACjE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,wCAAwC,CAAC;AACvD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,yCAAyC,CAAC;AACxD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uCAAuC,CAAC;AACtD,cAAc,wCAAwC,CAAC;AACvD,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,yCAAyC,CAAC;AACxD,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,wCAAwC,CAAC;AACvD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,0CAA0C,CAAC;AACzD,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,qDAAqD,CAAC;AACpE,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qCAAqC,CAAC;AACpD,cAAc,kDAAkD,CAAC;AACjE,cAAc,6CAA6C,CAAC;AAC5D,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,mCAAmC,CAAC;AAClD,cAAc,wCAAwC,CAAC;AACvD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,sCAAsC,CAAC;AACrD,cAAc,wCAAwC,CAAC;AACvD,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\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/policyObligationEnforcerFactory.js\";\nexport * from \"./factories/policyRequesterFactory.js\";\nexport * from \"./models/api/pap/IPapCreateRequest.js\";\nexport * from \"./models/api/pap/IPapGetAgreementRequest.js\";\nexport * from \"./models/api/pap/IPapGetAgreementResponse.js\";\nexport * from \"./models/api/pap/IPapGetOfferRequest.js\";\nexport * from \"./models/api/pap/IPapGetOfferResponse.js\";\nexport * from \"./models/api/pap/IPapGetRequest.js\";\nexport * from \"./models/api/pap/IPapGetResponse.js\";\nexport * from \"./models/api/pap/IPapGetSetRequest.js\";\nexport * from \"./models/api/pap/IPapGetSetResponse.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/IPnapCreateRequest.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/IRightsManagementAgreement.js\";\nexport * from \"./models/IRightsManagementInformation.js\";\nexport * from \"./models/IRightsManagementOffer.js\";\nexport * from \"./models/IRightsManagementPolicy.js\";\nexport * from \"./models/IRightsManagementPolicyMetadata.js\";\nexport * from \"./models/IRightsManagementPolicyTrust.js\";\nexport * from \"./models/IRightsManagementSet.js\";\nexport * from \"./models/odrlProfiles.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/IPolicyObligationEnforcer.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/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/policyMetadataContext.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/odrlPolicyHelper.js\";\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,cAAc,qCAAqC,CAAC;AACpD,cAAc,kDAAkD,CAAC;AACjE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,wCAAwC,CAAC;AACvD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,yCAAyC,CAAC;AACxD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uCAAuC,CAAC;AACtD,cAAc,wCAAwC,CAAC;AACvD,cAAc,sCAAsC,CAAC;AACrD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,uCAAuC,CAAC;AACtD,cAAc,yCAAyC,CAAC;AACxD,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,wCAAwC,CAAC;AACvD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,qCAAqC,CAAC;AACpD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,0CAA0C,CAAC;AACzD,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,qDAAqD,CAAC;AACpE,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qCAAqC,CAAC;AACpD,cAAc,kDAAkD,CAAC;AACjE,cAAc,6CAA6C,CAAC;AAC5D,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,mCAAmC,CAAC;AAClD,cAAc,wCAAwC,CAAC;AACvD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,sCAAsC,CAAC;AACrD,cAAc,wCAAwC,CAAC;AACvD,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\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/policyObligationEnforcerFactory.js\";\nexport * from \"./factories/policyRequesterFactory.js\";\nexport * from \"./models/api/pap/IPapCreateRequest.js\";\nexport * from \"./models/api/pap/IPapGetAgreementRequest.js\";\nexport * from \"./models/api/pap/IPapGetAgreementResponse.js\";\nexport * from \"./models/api/pap/IPapGetOfferRequest.js\";\nexport * from \"./models/api/pap/IPapGetOfferResponse.js\";\nexport * from \"./models/api/pap/IPapGetRequest.js\";\nexport * from \"./models/api/pap/IPapGetResponse.js\";\nexport * from \"./models/api/pap/IPapGetSetRequest.js\";\nexport * from \"./models/api/pap/IPapGetSetResponse.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/IPnapCreateRequest.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/IRightsManagementAgreement.js\";\nexport * from \"./models/IRightsManagementInformation.js\";\nexport * from \"./models/IRightsManagementOffer.js\";\nexport * from \"./models/IRightsManagementPolicy.js\";\nexport * from \"./models/IRightsManagementPolicyMetadata.js\";\nexport * from \"./models/IRightsManagementPolicyTrust.js\";\nexport * from \"./models/IRightsManagementSet.js\";\nexport * from \"./models/odrlProfiles.js\";\nexport * from \"./models/pap/IPolicyAdministrationPointComponent.js\";\nexport * from \"./models/pap/IPolicyLocator.js\";\nexport * from \"./models/pdp/IPolicyArbiter.js\";\nexport * from \"./models/pdp/IPolicyDecision.js\";\nexport * from \"./models/pdp/IPolicyDecisionPointComponent.js\";\nexport * from \"./models/pdp/IPolicyObligationEnforcer.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/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/policyMetadataContext.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/odrlPolicyHelper.js\";\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IPolicyAdministrationPointComponent.js","sourceRoot":"","sources":["../../../../src/models/pap/IPolicyAdministrationPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { JsonLdObjectWithOptionalAtId } from \"@twin.org/data-json-ld\";\nimport type { EntityCondition } from \"@twin.org/entity\";\nimport type { IRightsManagementAgreement } from \"../IRightsManagementAgreement.js\";\nimport type { IRightsManagementOffer } from \"../IRightsManagementOffer.js\";\nimport type { IRightsManagementPolicy } from \"../IRightsManagementPolicy.js\";\nimport type { IRightsManagementSet } from \"../IRightsManagementSet.js\";\n\n/**\n * Interface describing a Policy Administration Point (PAP) component that manages ODRL policies.\n */\nexport interface IPolicyAdministrationPointComponent extends IComponent {\n\t/**\n\t * Create a new policy with auto-generated UID.\n\t * @param policy The policy to create (uid will be auto-generated).\n\t * @returns The UID of the created policy.\n\t */\n\tcreate(policy: JsonLdObjectWithOptionalAtId<IRightsManagementPolicy>): Promise<string>;\n\n\t/**\n\t * Update an existing policy.\n\t * @param policy The policy to update (must include uid).\n\t * @returns A promise that resolves when the policy has been updated.\n\t */\n\tupdate(policy: IRightsManagementPolicy): Promise<void>;\n\n\t/**\n\t * Get a policy.\n\t * @param policyId The id of the policy to get.\n\t * @returns The policy.\n\t */\n\tget(policyId: string): Promise<IRightsManagementPolicy>;\n\n\t/**\n\t * Get an agreement.\n\t * @param agreementId The id of the agreement to get.\n\t * @returns The agreement.\n\t */\n\tgetAgreement(agreementId: string): Promise<IRightsManagementAgreement>;\n\n\t/**\n\t * Get a set.\n\t * @param setId The id of the set to get.\n\t * @returns The set.\n\t */\n\tgetSet(setId: string): Promise<IRightsManagementSet>;\n\n\t/**\n\t * Get an offer.\n\t * @param offerId The id of the offer to get.\n\t * @returns The offer.\n\t */\n\tgetOffer(offerId: string): Promise<IRightsManagementOffer>;\n\n\t/**\n\t * Remove a policy.\n\t * @param policyId The id of the policy to remove.\n\t * @returns A promise that resolves when the policy has been removed.\n\t */\n\tremove(policyId: string): Promise<void>;\n\n\t/**\n\t * Query the policies using the specified conditions.\n\t * @param
|
|
1
|
+
{"version":3,"file":"IPolicyAdministrationPointComponent.js","sourceRoot":"","sources":["../../../../src/models/pap/IPolicyAdministrationPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { JsonLdObjectWithOptionalAtId } from \"@twin.org/data-json-ld\";\nimport type { EntityCondition } from \"@twin.org/entity\";\nimport type { IRightsManagementAgreement } from \"../IRightsManagementAgreement.js\";\nimport type { IRightsManagementOffer } from \"../IRightsManagementOffer.js\";\nimport type { IRightsManagementPolicy } from \"../IRightsManagementPolicy.js\";\nimport type { IRightsManagementSet } from \"../IRightsManagementSet.js\";\nimport type { IPolicyLocator } from \"./IPolicyLocator.js\";\n\n/**\n * Interface describing a Policy Administration Point (PAP) component that manages ODRL policies.\n */\nexport interface IPolicyAdministrationPointComponent extends IComponent {\n\t/**\n\t * Create a new policy with auto-generated UID.\n\t * @param policy The policy to create (uid will be auto-generated).\n\t * @returns The UID of the created policy.\n\t */\n\tcreate(policy: JsonLdObjectWithOptionalAtId<IRightsManagementPolicy>): Promise<string>;\n\n\t/**\n\t * Update an existing policy.\n\t * @param policy The policy to update (must include uid).\n\t * @returns A promise that resolves when the policy has been updated.\n\t */\n\tupdate(policy: IRightsManagementPolicy): Promise<void>;\n\n\t/**\n\t * Get a policy.\n\t * @param policyId The id of the policy to get.\n\t * @returns The policy.\n\t */\n\tget(policyId: string): Promise<IRightsManagementPolicy>;\n\n\t/**\n\t * Get an agreement.\n\t * @param agreementId The id of the agreement to get.\n\t * @returns The agreement.\n\t */\n\tgetAgreement(agreementId: string): Promise<IRightsManagementAgreement>;\n\n\t/**\n\t * Get a set.\n\t * @param setId The id of the set to get.\n\t * @returns The set.\n\t */\n\tgetSet(setId: string): Promise<IRightsManagementSet>;\n\n\t/**\n\t * Get an offer.\n\t * @param offerId The id of the offer to get.\n\t * @returns The offer.\n\t */\n\tgetOffer(offerId: string): Promise<IRightsManagementOffer>;\n\n\t/**\n\t * Remove a policy.\n\t * @param policyId The id of the policy to remove.\n\t * @returns A promise that resolves when the policy has been removed.\n\t */\n\tremove(policyId: string): Promise<void>;\n\n\t/**\n\t * Query the policies using the specified conditions.\n\t * @param locator Optional locator to filter by type, assigner, assignee, target, or action.\n\t * @param conditions The conditions to use for the query.\n\t * @param cursor The cursor to use for pagination.\n\t * @param limit The number of results to return per page.\n\t * @returns Cursor for next page of results and the policies matching the query.\n\t */\n\tquery(\n\t\tlocator?: IPolicyLocator,\n\t\tconditions?: EntityCondition<IRightsManagementPolicy>,\n\t\tcursor?: string,\n\t\tlimit?: number\n\t): Promise<{\n\t\t/**\n\t\t * The cursor for the next page of results.\n\t\t */\n\t\tcursor?: string;\n\n\t\t/**\n\t\t * The policies that match the query.\n\t\t */\n\t\tpolicies: IRightsManagementPolicy[];\n\t}>;\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IPolicyLocator.js","sourceRoot":"","sources":["../../../../src/models/pap/IPolicyLocator.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { OdrlPolicyType } from \"@twin.org/standards-w3c-odrl\";\n\n/**\n * Interface describing criteria for locating policies.\n */\nexport interface IPolicyLocator {\n\t/**\n\t * The type of policy to filter by.\n\t */\n\ttype?: OdrlPolicyType;\n\n\t/**\n\t * The assigner to filter by.\n\t */\n\tassigner?: string;\n\n\t/**\n\t * The assignee to filter by.\n\t */\n\tassignee?: string;\n\n\t/**\n\t * The target to filter by.\n\t */\n\ttarget?: string;\n\n\t/**\n\t * The action to filter by.\n\t */\n\taction?: string;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IPolicyManagementPointComponent.js","sourceRoot":"","sources":["../../../../src/models/pmp/IPolicyManagementPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IRightsManagementPolicy } from \"../IRightsManagementPolicy.js\";\n\n/**\n * Interface describing a Policy Management Point (PMP) contract.\n * Provide the policies to the Policy Decision Point (PDP) based on the data and identities.\n */\nexport interface IPolicyManagementPointComponent extends IComponent {\n\t/**\n\t * Get the policies from a PAP based on the data and identities.\n\t * @param
|
|
1
|
+
{"version":3,"file":"IPolicyManagementPointComponent.js","sourceRoot":"","sources":["../../../../src/models/pmp/IPolicyManagementPointComponent.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IRightsManagementPolicy } from \"../IRightsManagementPolicy.js\";\nimport type { IPolicyLocator } from \"../pap/IPolicyLocator.js\";\n\n/**\n * Interface describing a Policy Management Point (PMP) contract.\n * Provide the policies to the Policy Decision Point (PDP) based on the data and identities.\n */\nexport interface IPolicyManagementPointComponent extends IComponent {\n\t/**\n\t * Get the policies from a PAP based on the data and identities.\n\t * @param locator Optional locator to filter by type, assigner, assignee, target, or action.\n\t * @param cursor An optional cursor to continue a previous query.\n\t * @returns Returns the policies which apply to the data and identities so that the PDP can make a decision.\n\t */\n\tretrieve(\n\t\tlocator?: IPolicyLocator,\n\t\tcursor?: string\n\t): Promise<{\n\t\tpolicies: IRightsManagementPolicy[];\n\t\tcursor?: string;\n\t}>;\n}\n"]}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -43,6 +43,7 @@ export * from "./models/IRightsManagementPolicyTrust.js";
|
|
|
43
43
|
export * from "./models/IRightsManagementSet.js";
|
|
44
44
|
export * from "./models/odrlProfiles.js";
|
|
45
45
|
export * from "./models/pap/IPolicyAdministrationPointComponent.js";
|
|
46
|
+
export * from "./models/pap/IPolicyLocator.js";
|
|
46
47
|
export * from "./models/pdp/IPolicyArbiter.js";
|
|
47
48
|
export * from "./models/pdp/IPolicyDecision.js";
|
|
48
49
|
export * from "./models/pdp/IPolicyDecisionPointComponent.js";
|
|
@@ -5,6 +5,7 @@ import type { IRightsManagementAgreement } from "../IRightsManagementAgreement.j
|
|
|
5
5
|
import type { IRightsManagementOffer } from "../IRightsManagementOffer.js";
|
|
6
6
|
import type { IRightsManagementPolicy } from "../IRightsManagementPolicy.js";
|
|
7
7
|
import type { IRightsManagementSet } from "../IRightsManagementSet.js";
|
|
8
|
+
import type { IPolicyLocator } from "./IPolicyLocator.js";
|
|
8
9
|
/**
|
|
9
10
|
* Interface describing a Policy Administration Point (PAP) component that manages ODRL policies.
|
|
10
11
|
*/
|
|
@@ -53,22 +54,13 @@ export interface IPolicyAdministrationPointComponent extends IComponent {
|
|
|
53
54
|
remove(policyId: string): Promise<void>;
|
|
54
55
|
/**
|
|
55
56
|
* Query the policies using the specified conditions.
|
|
56
|
-
* @param
|
|
57
|
-
* @param options.assigner The assigner to filter by.
|
|
58
|
-
* @param options.assignee The assignee to filter by.
|
|
59
|
-
* @param options.target The target to filter by.
|
|
60
|
-
* @param options.action The action to filter by.
|
|
57
|
+
* @param locator Optional locator to filter by type, assigner, assignee, target, or action.
|
|
61
58
|
* @param conditions The conditions to use for the query.
|
|
62
59
|
* @param cursor The cursor to use for pagination.
|
|
63
60
|
* @param limit The number of results to return per page.
|
|
64
61
|
* @returns Cursor for next page of results and the policies matching the query.
|
|
65
62
|
*/
|
|
66
|
-
query(
|
|
67
|
-
assigner?: string;
|
|
68
|
-
assignee?: string;
|
|
69
|
-
target?: string;
|
|
70
|
-
action?: string;
|
|
71
|
-
}, conditions?: EntityCondition<IRightsManagementPolicy>, cursor?: string, limit?: number): Promise<{
|
|
63
|
+
query(locator?: IPolicyLocator, conditions?: EntityCondition<IRightsManagementPolicy>, cursor?: string, limit?: number): Promise<{
|
|
72
64
|
/**
|
|
73
65
|
* The cursor for the next page of results.
|
|
74
66
|
*/
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { OdrlPolicyType } from "@twin.org/standards-w3c-odrl";
|
|
2
|
+
/**
|
|
3
|
+
* Interface describing criteria for locating policies.
|
|
4
|
+
*/
|
|
5
|
+
export interface IPolicyLocator {
|
|
6
|
+
/**
|
|
7
|
+
* The type of policy to filter by.
|
|
8
|
+
*/
|
|
9
|
+
type?: OdrlPolicyType;
|
|
10
|
+
/**
|
|
11
|
+
* The assigner to filter by.
|
|
12
|
+
*/
|
|
13
|
+
assigner?: string;
|
|
14
|
+
/**
|
|
15
|
+
* The assignee to filter by.
|
|
16
|
+
*/
|
|
17
|
+
assignee?: string;
|
|
18
|
+
/**
|
|
19
|
+
* The target to filter by.
|
|
20
|
+
*/
|
|
21
|
+
target?: string;
|
|
22
|
+
/**
|
|
23
|
+
* The action to filter by.
|
|
24
|
+
*/
|
|
25
|
+
action?: string;
|
|
26
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { IComponent } from "@twin.org/core";
|
|
2
2
|
import type { IRightsManagementPolicy } from "../IRightsManagementPolicy.js";
|
|
3
|
+
import type { IPolicyLocator } from "../pap/IPolicyLocator.js";
|
|
3
4
|
/**
|
|
4
5
|
* Interface describing a Policy Management Point (PMP) contract.
|
|
5
6
|
* Provide the policies to the Policy Decision Point (PDP) based on the data and identities.
|
|
@@ -7,20 +8,11 @@ import type { IRightsManagementPolicy } from "../IRightsManagementPolicy.js";
|
|
|
7
8
|
export interface IPolicyManagementPointComponent extends IComponent {
|
|
8
9
|
/**
|
|
9
10
|
* Get the policies from a PAP based on the data and identities.
|
|
10
|
-
* @param
|
|
11
|
-
* @param options.assigner The assigner to filter by.
|
|
12
|
-
* @param options.assignee The assignee to filter by.
|
|
13
|
-
* @param options.target The target to filter by.
|
|
14
|
-
* @param options.action The action to filter by.
|
|
11
|
+
* @param locator Optional locator to filter by type, assigner, assignee, target, or action.
|
|
15
12
|
* @param cursor An optional cursor to continue a previous query.
|
|
16
13
|
* @returns Returns the policies which apply to the data and identities so that the PDP can make a decision.
|
|
17
14
|
*/
|
|
18
|
-
retrieve(
|
|
19
|
-
assigner?: string;
|
|
20
|
-
assignee?: string;
|
|
21
|
-
target?: string;
|
|
22
|
-
action?: string;
|
|
23
|
-
}, cursor?: string): Promise<{
|
|
15
|
+
retrieve(locator?: IPolicyLocator, cursor?: string): Promise<{
|
|
24
16
|
policies: IRightsManagementPolicy[];
|
|
25
17
|
cursor?: string;
|
|
26
18
|
}>;
|
package/docs/changelog.md
CHANGED
|
@@ -6,6 +6,20 @@
|
|
|
6
6
|
|
|
7
7
|
* remove EcosystemPolicy models/DTOs and standardize policy typing on `OdrlPolicyType` for v2.
|
|
8
8
|
|
|
9
|
+
## [0.0.3-next.58](https://github.com/iotaledger/twin-rights-management/compare/rights-management-models-v0.0.3-next.57...rights-management-models-v0.0.3-next.58) (2026-06-19)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
### Miscellaneous Chores
|
|
13
|
+
|
|
14
|
+
* **rights-management-models:** Synchronize repo versions
|
|
15
|
+
|
|
16
|
+
## [0.0.3-next.57](https://github.com/iotaledger/twin-rights-management/compare/rights-management-models-v0.0.3-next.56...rights-management-models-v0.0.3-next.57) (2026-06-19)
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
### Features
|
|
20
|
+
|
|
21
|
+
* policy locator ([#213](https://github.com/iotaledger/twin-rights-management/issues/213)) ([db5e71e](https://github.com/iotaledger/twin-rights-management/commit/db5e71ec2fcfba5103b94a62221f8954867f8dab))
|
|
22
|
+
|
|
9
23
|
## [0.0.3-next.56](https://github.com/iotaledger/twin-rights-management/compare/rights-management-models-v0.0.3-next.55...rights-management-models-v0.0.3-next.56) (2026-06-19)
|
|
10
24
|
|
|
11
25
|
|
package/docs/reference/index.md
CHANGED
|
@@ -43,6 +43,7 @@
|
|
|
43
43
|
- [IPnpOfferRequest](interfaces/IPnpOfferRequest.md)
|
|
44
44
|
- [IPnpTerminateRequest](interfaces/IPnpTerminateRequest.md)
|
|
45
45
|
- [IPolicyAdministrationPointComponent](interfaces/IPolicyAdministrationPointComponent.md)
|
|
46
|
+
- [IPolicyLocator](interfaces/IPolicyLocator.md)
|
|
46
47
|
- [IPolicyArbiter](interfaces/IPolicyArbiter.md)
|
|
47
48
|
- [IPolicyDecision](interfaces/IPolicyDecision.md)
|
|
48
49
|
- [IPolicyDecisionPointComponent](interfaces/IPolicyDecisionPointComponent.md)
|
|
@@ -164,39 +164,17 @@ A promise that resolves when the policy has been removed.
|
|
|
164
164
|
|
|
165
165
|
### query() {#query}
|
|
166
166
|
|
|
167
|
-
> **query**(`
|
|
167
|
+
> **query**(`locator?`, `conditions?`, `cursor?`, `limit?`): `Promise`\<\{ `cursor?`: `string`; `policies`: [`IRightsManagementPolicy`](IRightsManagementPolicy.md)[]; \}\>
|
|
168
168
|
|
|
169
169
|
Query the policies using the specified conditions.
|
|
170
170
|
|
|
171
171
|
#### Parameters
|
|
172
172
|
|
|
173
|
-
#####
|
|
173
|
+
##### locator?
|
|
174
174
|
|
|
175
|
-
|
|
175
|
+
[`IPolicyLocator`](IPolicyLocator.md)
|
|
176
176
|
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
`string`
|
|
180
|
-
|
|
181
|
-
The assigner to filter by.
|
|
182
|
-
|
|
183
|
-
###### assignee?
|
|
184
|
-
|
|
185
|
-
`string`
|
|
186
|
-
|
|
187
|
-
The assignee to filter by.
|
|
188
|
-
|
|
189
|
-
###### target?
|
|
190
|
-
|
|
191
|
-
`string`
|
|
192
|
-
|
|
193
|
-
The target to filter by.
|
|
194
|
-
|
|
195
|
-
###### action?
|
|
196
|
-
|
|
197
|
-
`string`
|
|
198
|
-
|
|
199
|
-
The action to filter by.
|
|
177
|
+
Optional locator to filter by type, assigner, assignee, target, or action.
|
|
200
178
|
|
|
201
179
|
##### conditions?
|
|
202
180
|
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Interface: IPolicyLocator
|
|
2
|
+
|
|
3
|
+
Interface describing criteria for locating policies.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
### type? {#type}
|
|
8
|
+
|
|
9
|
+
> `optional` **type?**: `OdrlPolicyType`
|
|
10
|
+
|
|
11
|
+
The type of policy to filter by.
|
|
12
|
+
|
|
13
|
+
***
|
|
14
|
+
|
|
15
|
+
### assigner? {#assigner}
|
|
16
|
+
|
|
17
|
+
> `optional` **assigner?**: `string`
|
|
18
|
+
|
|
19
|
+
The assigner to filter by.
|
|
20
|
+
|
|
21
|
+
***
|
|
22
|
+
|
|
23
|
+
### assignee? {#assignee}
|
|
24
|
+
|
|
25
|
+
> `optional` **assignee?**: `string`
|
|
26
|
+
|
|
27
|
+
The assignee to filter by.
|
|
28
|
+
|
|
29
|
+
***
|
|
30
|
+
|
|
31
|
+
### target? {#target}
|
|
32
|
+
|
|
33
|
+
> `optional` **target?**: `string`
|
|
34
|
+
|
|
35
|
+
The target to filter by.
|
|
36
|
+
|
|
37
|
+
***
|
|
38
|
+
|
|
39
|
+
### action? {#action}
|
|
40
|
+
|
|
41
|
+
> `optional` **action?**: `string`
|
|
42
|
+
|
|
43
|
+
The action to filter by.
|
|
@@ -11,39 +11,17 @@ Provide the policies to the Policy Decision Point (PDP) based on the data and id
|
|
|
11
11
|
|
|
12
12
|
### retrieve() {#retrieve}
|
|
13
13
|
|
|
14
|
-
> **retrieve**(`
|
|
14
|
+
> **retrieve**(`locator?`, `cursor?`): `Promise`\<\{ `policies`: [`IRightsManagementPolicy`](IRightsManagementPolicy.md)[]; `cursor?`: `string`; \}\>
|
|
15
15
|
|
|
16
16
|
Get the policies from a PAP based on the data and identities.
|
|
17
17
|
|
|
18
18
|
#### Parameters
|
|
19
19
|
|
|
20
|
-
#####
|
|
20
|
+
##### locator?
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
[`IPolicyLocator`](IPolicyLocator.md)
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
`string`
|
|
27
|
-
|
|
28
|
-
The assigner to filter by.
|
|
29
|
-
|
|
30
|
-
###### assignee?
|
|
31
|
-
|
|
32
|
-
`string`
|
|
33
|
-
|
|
34
|
-
The assignee to filter by.
|
|
35
|
-
|
|
36
|
-
###### target?
|
|
37
|
-
|
|
38
|
-
`string`
|
|
39
|
-
|
|
40
|
-
The target to filter by.
|
|
41
|
-
|
|
42
|
-
###### action?
|
|
43
|
-
|
|
44
|
-
`string`
|
|
45
|
-
|
|
46
|
-
The action to filter by.
|
|
24
|
+
Optional locator to filter by type, assigner, assignee, target, or action.
|
|
47
25
|
|
|
48
26
|
##### cursor?
|
|
49
27
|
|
package/package.json
CHANGED