import * as z from "zod/v3";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
export type EventFilter = {
    /**
     * Filter type. One of [contextAttribute, eventProperty, group]
     */
    type: string;
    /**
     * If not a group node, the context attribute name or event property name to filter on
     */
    attribute?: string | undefined;
    op: string;
    /**
     * The context attribute / event property values or group member nodes. Numeric values must not exceed 14 decimal places.
     */
    values: Array<any>;
    /**
     * For context attribute filters, the context kind.
     */
    contextKind?: string | undefined;
    /**
     * If set, then take the inverse of the operator. 'in' becomes 'not in'.
     */
    negate: boolean;
};
/** @internal */
export declare const EventFilter$inboundSchema: z.ZodType<EventFilter, z.ZodTypeDef, unknown>;
/** @internal */
export type EventFilter$Outbound = {
    type: string;
    attribute?: string | undefined;
    op: string;
    values: Array<any>;
    contextKind?: string | undefined;
    negate: boolean;
};
/** @internal */
export declare const EventFilter$outboundSchema: z.ZodType<EventFilter$Outbound, z.ZodTypeDef, EventFilter>;
export declare function eventFilterToJSON(eventFilter: EventFilter): string;
export declare function eventFilterFromJSON(jsonString: string): SafeParseResult<EventFilter, SDKValidationError>;
//# sourceMappingURL=eventfilter.d.ts.map