/** * EACL Filter - matches resources based on attributes. */ import { Match, HeaderType } from './enums'; /** * Filter describes a binary property of an access-controlled NeoFS resource. */ export declare class Filter { private _headerType; private _match; private _key; private _value; constructor(headerType: HeaderType, key: string, match: Match, value: string); /** Header type to filter on */ get headerType(): HeaderType; /** Attribute key to match */ get key(): string; /** Match operator */ get match(): Match; /** Value to match against */ get value(): string; /** * Create a filter for object attributes. */ static objectAttribute(key: string, match: Match, value: string): Filter; /** * Create a filter for request X-headers. */ static requestHeader(key: string, match: Match, value: string): Filter; /** * Create a filter for service headers. */ static serviceHeader(key: string, match: Match, value: string): Filter; /** * Filter by object ID. */ static objectId(objectId: string): Filter; /** * Filter by container ID. */ static containerId(containerId: string): Filter; /** * Filter by owner ID. */ static ownerId(ownerId: string): Filter; /** * Filter by creation epoch. */ static creationEpoch(match: Match, epoch: bigint): Filter; /** * Filter by payload size. */ static payloadSize(match: Match, size: bigint): Filter; /** * Clone this filter. */ clone(): Filter; }