@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 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";
@@ -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 options Optional options to filter by assigner or assignee.\n\t * @param options.assigner The assigner to filter by.\n\t * @param options.assignee The assignee to filter by.\n\t * @param options.target The target to filter by.\n\t * @param options.action The action to filter by.\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\toptions?: {\n\t\t\tassigner?: string;\n\t\t\tassignee?: string;\n\t\t\ttarget?: string;\n\t\t\taction?: string;\n\t\t},\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"]}
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,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IPolicyLocator.js.map
@@ -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 options Optional options to filter by assigner or assignee.\n\t * @param options.assigner The assigner to filter by.\n\t * @param options.assignee The assignee to filter by.\n\t * @param options.target The target to filter by.\n\t * @param options.action The action to filter by.\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\toptions?: {\n\t\t\tassigner?: string;\n\t\t\tassignee?: string;\n\t\t\ttarget?: string;\n\t\t\taction?: string;\n\t\t},\n\t\tcursor?: string\n\t): Promise<{\n\t\tpolicies: IRightsManagementPolicy[];\n\t\tcursor?: string;\n\t}>;\n}\n"]}
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"]}
@@ -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 options Optional options to filter by assigner or assignee.
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(options?: {
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 options Optional options to filter by assigner or assignee.
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(options?: {
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
 
@@ -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**(`options?`, `conditions?`, `cursor?`, `limit?`): `Promise`\<\{ `cursor?`: `string`; `policies`: [`IRightsManagementPolicy`](IRightsManagementPolicy.md)[]; \}\>
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
- ##### options?
173
+ ##### locator?
174
174
 
175
- Optional options to filter by assigner or assignee.
175
+ [`IPolicyLocator`](IPolicyLocator.md)
176
176
 
177
- ###### assigner?
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**(`options?`, `cursor?`): `Promise`\<\{ `policies`: [`IRightsManagementPolicy`](IRightsManagementPolicy.md)[]; `cursor?`: `string`; \}\>
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
- ##### options?
20
+ ##### locator?
21
21
 
22
- Optional options to filter by assigner or assignee.
22
+ [`IPolicyLocator`](IPolicyLocator.md)
23
23
 
24
- ###### assigner?
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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@twin.org/rights-management-models",
3
- "version": "0.0.3-next.56",
3
+ "version": "0.0.3-next.58",
4
4
  "description": "Data model definitions for rights management policies, negotiations, and service contracts.",
5
5
  "repository": {
6
6
  "type": "git",