/** * EACL Target - describes who the access rule applies to. */ import { Role } from './enums'; /** * Target describes the NeoFS parties that are subject to a specific access rule. */ export declare class Target { private _role; private _subjects; constructor(role?: Role, subjects?: Uint8Array[]); /** Target role */ get role(): Role; /** * Target subjects (user IDs or public keys). * - 25-byte values are user IDs * - 33-byte values are compressed public keys (deprecated, use user IDs) */ get subjects(): Uint8Array[]; /** * Target the container owner. */ static user(): Target; /** * Target system nodes (storage and IR nodes). * @deprecated */ static system(): Target; /** * Target anyone who isn't the owner or system. */ static others(): Target; /** * Target specific users by their IDs (25 bytes each). */ static users(userIds: Uint8Array[]): Target; /** * Target a single user by their ID. */ static userId(userId: Uint8Array): Target; /** * Target specific users by their public keys (33 bytes compressed). * @deprecated Use user IDs instead */ static publicKeys(keys: Uint8Array[]): Target; /** * Target a single user by their public key. * @deprecated Use user IDs instead */ static publicKey(key: Uint8Array): Target; /** * Clone this target. */ clone(): Target; }