import { z } from 'zod';
import { Endpoint } from './common';
declare const decisionDefinitionSchema: z.ZodObject<{
    decisionDefinitionId: z.ZodString;
    name: z.ZodString;
    version: z.ZodNumber;
    decisionRequirementsId: z.ZodString;
    tenantId: z.ZodString;
    decisionDefinitionKey: z.ZodString;
    decisionRequirementsKey: z.ZodString;
}, z.core.$strip>;
type DecisionDefinition = z.infer<typeof decisionDefinitionSchema>;
declare const queryDecisionDefinitionsRequestBodySchema: z.ZodObject<{
    sort: z.ZodOptional<z.ZodArray<z.ZodObject<{
        field: z.ZodEnum<{
            version: "version";
            tenantId: "tenantId";
            name: "name";
            decisionDefinitionId: "decisionDefinitionId";
            decisionRequirementsId: "decisionRequirementsId";
            decisionDefinitionKey: "decisionDefinitionKey";
            decisionRequirementsKey: "decisionRequirementsKey";
        }>;
        order: z.ZodOptional<z.ZodEnum<{
            asc: "asc";
            desc: "desc";
        }>>;
    }, z.core.$strip>>>;
    page: z.ZodOptional<z.ZodObject<{
        from: z.ZodOptional<z.ZodNumber>;
        limit: z.ZodOptional<z.ZodNumber>;
        before: z.ZodOptional<z.ZodOptional<z.ZodString>>;
        after: z.ZodOptional<z.ZodOptional<z.ZodString>>;
    }, z.core.$strip>>;
    filter: z.ZodOptional<z.ZodObject<{
        decisionDefinitionId: z.ZodOptional<z.ZodString>;
        name: z.ZodOptional<z.ZodString>;
        version: z.ZodOptional<z.ZodNumber>;
        decisionRequirementsId: z.ZodOptional<z.ZodString>;
        tenantId: z.ZodOptional<z.ZodString>;
        decisionDefinitionKey: z.ZodOptional<z.ZodString>;
        decisionRequirementsKey: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
}, z.core.$strip>;
type QueryDecisionDefinitionsRequestBody = z.infer<typeof queryDecisionDefinitionsRequestBodySchema>;
declare const queryDecisionDefinitionsResponseBodySchema: z.ZodType<import('./common').QueryResponseBody<{
    decisionDefinitionId: string;
    name: string;
    version: number;
    decisionRequirementsId: string;
    tenantId: string;
    decisionDefinitionKey: string;
    decisionRequirementsKey: string;
}>, unknown, z.core.$ZodTypeInternals<import('./common').QueryResponseBody<{
    decisionDefinitionId: string;
    name: string;
    version: number;
    decisionRequirementsId: string;
    tenantId: string;
    decisionDefinitionKey: string;
    decisionRequirementsKey: string;
}>, unknown>>;
type QueryDecisionDefinitionsResponseBody = z.infer<typeof queryDecisionDefinitionsResponseBodySchema>;
declare const getDecisionDefinitionXmlResponseBodySchema: z.ZodString;
type GetDecisionDefinitionXmlResponseBody = z.infer<typeof getDecisionDefinitionXmlResponseBodySchema>;
declare const evaluatedDecisionInputItemSchema: z.ZodObject<{
    inputId: z.ZodString;
    inputName: z.ZodString;
    inputValue: z.ZodString;
}, z.core.$strip>;
type EvaluatedDecisionInputItem = z.infer<typeof evaluatedDecisionInputItemSchema>;
declare const evaluatedDecisionOutputItemSchema: z.ZodObject<{
    outputId: z.ZodString;
    outputName: z.ZodString;
    outputValue: z.ZodString;
}, z.core.$strip>;
type EvaluatedDecisionOutputItem = z.infer<typeof evaluatedDecisionOutputItemSchema>;
declare const matchedDecisionRuleItemSchema: z.ZodObject<{
    ruleId: z.ZodString;
    ruleIndex: z.ZodNumber;
    evaluatedOutputs: z.ZodArray<z.ZodObject<{
        outputId: z.ZodString;
        outputName: z.ZodString;
        outputValue: z.ZodString;
    }, z.core.$strip>>;
}, z.core.$strip>;
type MatchedDecisionRuleItem = z.infer<typeof matchedDecisionRuleItemSchema>;
declare const evaluatedDecisionResultSchema: z.ZodObject<{
    decisionDefinitionId: z.ZodString;
    decisionDefinitionName: z.ZodString;
    decisionDefinitionVersion: z.ZodNumber;
    decisionDefinitionType: z.ZodString;
    output: z.ZodString;
    tenantId: z.ZodString;
    matchedRules: z.ZodArray<z.ZodObject<{
        ruleId: z.ZodString;
        ruleIndex: z.ZodNumber;
        evaluatedOutputs: z.ZodArray<z.ZodObject<{
            outputId: z.ZodString;
            outputName: z.ZodString;
            outputValue: z.ZodString;
        }, z.core.$strip>>;
    }, z.core.$strip>>;
    evaluatedInputs: z.ZodArray<z.ZodObject<{
        inputId: z.ZodString;
        inputName: z.ZodString;
        inputValue: z.ZodString;
    }, z.core.$strip>>;
    decisionDefinitionKey: z.ZodString;
}, z.core.$strip>;
type EvaluatedDecisionResult = z.infer<typeof evaluatedDecisionResultSchema>;
declare const evaluateDecisionRequestBodySchema: z.ZodObject<{
    decisionDefinitionId: z.ZodOptional<z.ZodString>;
    variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
    tenantId: z.ZodOptional<z.ZodString>;
    decisionDefinitionKey: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
type EvaluateDecisionRequestBody = z.infer<typeof evaluateDecisionRequestBodySchema>;
declare const evaluateDecisionResponseBodySchema: z.ZodObject<{
    decisionDefinitionId: z.ZodString;
    decisionDefinitionName: z.ZodString;
    decisionDefinitionVersion: z.ZodNumber;
    decisionRequirementsId: z.ZodString;
    output: z.ZodString;
    failedDecisionDefinitionId: z.ZodOptional<z.ZodString>;
    failureMessage: z.ZodOptional<z.ZodString>;
    tenantId: z.ZodString;
    decisionDefinitionKey: z.ZodString;
    decisionRequirementsKey: z.ZodString;
    decisionInstanceKey: z.ZodString;
    evaluatedDecisions: z.ZodArray<z.ZodObject<{
        decisionDefinitionId: z.ZodString;
        decisionDefinitionName: z.ZodString;
        decisionDefinitionVersion: z.ZodNumber;
        decisionDefinitionType: z.ZodString;
        output: z.ZodString;
        tenantId: z.ZodString;
        matchedRules: z.ZodArray<z.ZodObject<{
            ruleId: z.ZodString;
            ruleIndex: z.ZodNumber;
            evaluatedOutputs: z.ZodArray<z.ZodObject<{
                outputId: z.ZodString;
                outputName: z.ZodString;
                outputValue: z.ZodString;
            }, z.core.$strip>>;
        }, z.core.$strip>>;
        evaluatedInputs: z.ZodArray<z.ZodObject<{
            inputId: z.ZodString;
            inputName: z.ZodString;
            inputValue: z.ZodString;
        }, z.core.$strip>>;
        decisionDefinitionKey: z.ZodString;
    }, z.core.$strip>>;
}, z.core.$strip>;
type EvaluateDecisionResponseBody = z.infer<typeof evaluateDecisionResponseBodySchema>;
declare const queryDecisionDefinitions: Endpoint;
declare const getDecisionDefinition: Endpoint<{
    decisionDefinitionKey: string;
}>;
declare const getDecisionDefinitionXml: Endpoint<{
    decisionDefinitionKey: string;
}>;
declare const evaluateDecision: Endpoint;
export { decisionDefinitionSchema, queryDecisionDefinitionsRequestBodySchema, queryDecisionDefinitionsResponseBodySchema, getDecisionDefinitionXmlResponseBodySchema, evaluatedDecisionInputItemSchema, evaluatedDecisionOutputItemSchema, matchedDecisionRuleItemSchema, evaluatedDecisionResultSchema, evaluateDecisionRequestBodySchema, evaluateDecisionResponseBodySchema, queryDecisionDefinitions, getDecisionDefinition, getDecisionDefinitionXml, evaluateDecision, };
export type { DecisionDefinition, QueryDecisionDefinitionsRequestBody, QueryDecisionDefinitionsResponseBody, GetDecisionDefinitionXmlResponseBody, EvaluatedDecisionInputItem, EvaluatedDecisionOutputItem, MatchedDecisionRuleItem, EvaluatedDecisionResult, EvaluateDecisionRequestBody, EvaluateDecisionResponseBody, };
