import type { RuntimeValidator } from '../../validation/lightweight-validators';
import type { ExpressionImplementation } from '../../types/core';
import type { ExpressionMetadata, LLMDocumentation } from '../../types/expression-types';
interface EnhancedExpressionImplementation extends ExpressionImplementation {
    metadata?: ExpressionMetadata;
    documentation?: LLMDocumentation;
    inputSchema?: RuntimeValidator<unknown>;
}
export declare const equalsExpression: EnhancedExpressionImplementation;
export declare const strictEqualsExpression: ExpressionImplementation;
export declare const notEqualsExpression: ExpressionImplementation;
export declare const strictNotEqualsExpression: ExpressionImplementation;
export declare const lessThanExpression: ExpressionImplementation;
export declare const lessThanOrEqualExpression: ExpressionImplementation;
export declare const greaterThanExpression: ExpressionImplementation;
export declare const greaterThanOrEqualExpression: ExpressionImplementation;
export declare const andExpression: EnhancedExpressionImplementation;
export declare const orExpression: ExpressionImplementation;
export declare const notExpression: ExpressionImplementation;
export declare const isEmptyExpression: ExpressionImplementation;
export declare const noExpression: ExpressionImplementation;
export declare const isNotEmptyExpression: ExpressionImplementation;
export declare const existsExpression: ExpressionImplementation;
export declare const doesNotExistExpression: ExpressionImplementation;
export declare const containsExpression: ExpressionImplementation;
export declare const doesNotContainExpression: ExpressionImplementation;
export declare const startsWithExpression: ExpressionImplementation;
export declare const endsWithExpression: ExpressionImplementation;
export declare const matchesExpression: EnhancedExpressionImplementation;
export declare const hasExpression: ExpressionImplementation;
export declare const doesNotHaveExpression: ExpressionImplementation;
export declare const logicalExpressions: {
    readonly equals: EnhancedExpressionImplementation;
    readonly strictEquals: ExpressionImplementation;
    readonly notEquals: ExpressionImplementation;
    readonly strictNotEquals: ExpressionImplementation;
    readonly lessThan: ExpressionImplementation;
    readonly lessThanOrEqual: ExpressionImplementation;
    readonly greaterThan: ExpressionImplementation;
    readonly greaterThanOrEqual: ExpressionImplementation;
    readonly and: EnhancedExpressionImplementation;
    readonly or: ExpressionImplementation;
    readonly not: ExpressionImplementation;
    readonly no: ExpressionImplementation;
    readonly isEmpty: ExpressionImplementation;
    readonly isNotEmpty: ExpressionImplementation;
    readonly exists: ExpressionImplementation;
    readonly doesNotExist: ExpressionImplementation;
    readonly contains: ExpressionImplementation;
    readonly doesNotContain: ExpressionImplementation;
    readonly startsWith: ExpressionImplementation;
    readonly endsWith: ExpressionImplementation;
    readonly matches: EnhancedExpressionImplementation;
    readonly has: ExpressionImplementation;
    readonly doesNotHave: ExpressionImplementation;
};
export type LogicalExpressionName = keyof typeof logicalExpressions;
export { AndExpression, OrExpression, NotExpression, createAndExpression, createOrExpression, createNotExpression, } from './impl/index';
//# sourceMappingURL=index.d.ts.map