import { type IPolicyInformationPointComponent, type IRightsManagementInformation, type IRightsManagementPolicy, PolicyInformationAccessMode } from "@twin.org/rights-management-models"; import type { OdrlActionType } from "@twin.org/standards-w3c-odrl"; import type { IPolicyInformationPointServiceConstructorOptions } from "./models/IPolicyInformationPointServiceConstructorOptions.js"; /** * Class implementation of Policy Information Point Component. */ export declare class PolicyInformationPointService implements IPolicyInformationPointComponent { /** * The class name of the Policy Information Point Service. */ static readonly CLASS_NAME: string; /** * Create a new instance of PolicyInformationPointService (PIP). * @param options The options for the component. */ constructor(options?: IPolicyInformationPointServiceConstructorOptions); /** * Returns the class name of the component. * @returns The class name of the component. */ className(): string; /** * Retrieve additional information which is relevant in the PDP decision making. * @param policy The policy to retrieve the information for if available. * @param accessMode The access mode to use for the retrieval. * @param data The data to get any additional information for. * @param action The action to get any additional information for. * @returns Returns additional information based on the data and identities. */ retrieve(policy: IRightsManagementPolicy | undefined, accessMode: PolicyInformationAccessMode, data?: D, action?: OdrlActionType | string): Promise; }