import { type Static } from '@sinclair/typebox'; /** * A Mode enum which should be used when creating policies in code instead of writing out 'every' and 'some'. */ export declare const Modes: { readonly EVERY: "every"; readonly SOME: "some"; }; /** * Exposing the module schema properties for some consuming systems while we wait for an official way to merge modules * in TypeBox. */ export declare const ModuleSchemaProperties: { Mode: import("@sinclair/typebox").TEnum<{ readonly EVERY: "every"; readonly SOME: "some"; }>; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }; export declare const Module: import("@sinclair/typebox").TModule<{ Mode: import("@sinclair/typebox").TEnum<{ readonly EVERY: "every"; readonly SOME: "some"; }>; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }, { Mode: import("@sinclair/typebox").TEnum<{ readonly EVERY: "every"; readonly SOME: "some"; }>; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }>; /** * Mode is an enum for determining how the conditions will be groups. ExpressionGroups and ExpressionIterators conjoin * groups of expressions with the logical operators "AND" and "OR", which are represented by "every" and "some" * respectively. */ export type Mode = Static; export declare const ModeSchema: import("@sinclair/typebox").TImport<{ Mode: import("@sinclair/typebox").TEnum<{ readonly EVERY: "every"; readonly SOME: "some"; }>; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }, "Mode">; /** * CaseInsensitiveMode extends the Mode enum to allow for upper and lowercase mode inputs. Internally is normalized * to lowercase letters. */ export type CaseInsensitiveMode = Static; export declare const CaseInsensitiveModeSchema: import("@sinclair/typebox").TImport<{ Mode: import("@sinclair/typebox").TEnum<{ readonly EVERY: "every"; readonly SOME: "some"; }>; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }, "CaseInsensitiveMode">; /** * Operand represents either a static value or a reference to some data in the context. These values are used in the * logical comparisons. */ export type Operand = Static; export declare const OperandSchema: import("@sinclair/typebox").TImport<{ Mode: import("@sinclair/typebox").TEnum<{ readonly EVERY: "every"; readonly SOME: "some"; }>; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }, "Operand">; export declare const OperandType: import("@sinclair/typebox/compiler").TypeCheck; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }, "Operand">>; /** * Expression represents any combination of operands and operators, which comprise a logical expression which evaluates * to a boolean. */ export type Expression = Static; export declare const ExpressionSchema: import("@sinclair/typebox").TImport<{ Mode: import("@sinclair/typebox").TEnum<{ readonly EVERY: "every"; readonly SOME: "some"; }>; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }, "Expression">; export declare const ExpressionType: import("@sinclair/typebox/compiler").TypeCheck; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }, "Expression">>; /** * ExpressionIterator represents a grouping of expressions (aka conditions). ExpressionIterators only evaluate * against arrays of values, where each element in the array evaluates against the condition. Like ExpressionGroups, * each of the evaluated elements is conjoined by the operators "AND" and "OR". */ export type ExpressionIterator = Static; export declare const ExpressionIteratorSchema: import("@sinclair/typebox").TImport<{ Mode: import("@sinclair/typebox").TEnum<{ readonly EVERY: "every"; readonly SOME: "some"; }>; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }, "ExpressionIterator">; export declare const ExpressionIteratorType: import("@sinclair/typebox/compiler").TypeCheck; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }, "ExpressionIterator">>; /** * ExpressionGroup represents a grouping of expressions that are conjoined by the operators "AND" and "OR". */ export type ExpressionGroup = Static; export declare const ExpressionGroupSchema: import("@sinclair/typebox").TImport<{ Mode: import("@sinclair/typebox").TEnum<{ readonly EVERY: "every"; readonly SOME: "some"; }>; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }, "ExpressionGroup">; export declare const ExpressionGroupType: import("@sinclair/typebox/compiler").TypeCheck; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }, "ExpressionGroup">>; /** * Condition represents the union of the expression types. */ export type Condition = Static; export declare const ConditionSchema: import("@sinclair/typebox").TImport<{ Mode: import("@sinclair/typebox").TEnum<{ readonly EVERY: "every"; readonly SOME: "some"; }>; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }, "Condition">; export declare const ConditionType: import("@sinclair/typebox/compiler").TypeCheck; CaseInsensitiveMode: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Mode">, import("@sinclair/typebox").TRef<"Mode">]>; Operand: import("@sinclair/typebox").TIntersect<[import("@sinclair/typebox").TObject<{ cast: import("@sinclair/typebox").TOptional; iterate: import("@sinclair/typebox").TOptional; }>, import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{ value: import("@sinclair/typebox").TUnknown; }>, import("@sinclair/typebox").TObject<{ reference: import("@sinclair/typebox").TOptional; }>]>]>; Expression: import("@sinclair/typebox").TObject<{ comparison: import("@sinclair/typebox").TOptional; operands: import("@sinclair/typebox").TArray>; operator: import("@sinclair/typebox").TString; }>; ExpressionIterator: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"ExpressionGroup">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>; scope: import("@sinclair/typebox").TOptional>; }>; ExpressionGroup: import("@sinclair/typebox").TObject<{ mode: import("@sinclair/typebox").TOptional>; conditions: import("@sinclair/typebox").TArray, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"Expression">]>>; }>; Condition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRef<"Expression">, import("@sinclair/typebox").TRef<"ExpressionIterator">, import("@sinclair/typebox").TRef<"ExpressionGroup">]>; }, "Condition">>;