import BigNumber from 'bignumber.js'; import { BaseAsset, Context, CustomPermissionGroup, FungibleAsset, Identity, KnownPermissionGroup, Namespace } from '../../../internal'; import { EventIdEnum, ModuleIdEnum } from '../../../middleware/types'; import { Asset, AssetWithGroup, CheckPermissionsResult, EventIdentifier, ProcedureMethod, ResultSet, SetPermissionGroupParams, SignerType, TxTag, WaivePermissionsParams } from '../../../types'; /** * Handles all Asset Permissions (External Agents) related functionality on the Identity side */ export declare class AssetPermissions extends Namespace { /** * @hidden */ constructor(parent: Identity, context: Context); /** * Retrieve all the Assets over which this Identity has permissions, with the corresponding Permission Group */ get(): Promise; /** * Check whether this Identity has specific transaction Permissions over an Asset */ checkPermissions(args: { asset: BaseAsset | string; transactions: TxTag[] | null; }): Promise>; /** * Retrieve this Identity's Permission Group for a specific Asset */ getGroup({ asset, }: { asset: string | BaseAsset; }): Promise; /** * Retrieve the identifier data (block number, date and event index) of the event that was emitted when this Identity was enabled/added as * an Agent with permissions over a specific Asset * * @note uses the middlewareV2 * @note there is a possibility that the data is not ready by the time it is requested. In that case, `null` is returned */ enabledAt({ asset }: { asset: string | Asset; }): Promise; /** * Abdicate from the current Permissions Group for a given Asset. This means that this Identity will no longer have any permissions over said Asset */ waive: ProcedureMethod; /** * Assign this Identity to a different Permission Group for a given Asset */ setGroup: ProcedureMethod; /** * Retrieve all Events triggered by Operations this Identity has performed on a specific Asset * * @param opts.moduleId - filters results by module * @param opts.eventId - filters results by event * @param opts.size - page size * @param opts.start - page offset * * @note uses the middlewareV2 * @note supports pagination */ getOperationHistory(opts: { asset: string | FungibleAsset; moduleId?: ModuleIdEnum; eventId?: EventIdEnum; size?: BigNumber; start?: BigNumber; }): Promise>; } //# sourceMappingURL=AssetPermissions.d.ts.map