import { z } from 'zod';
import { Endpoint } from './common';
import { processDefinitionSchema, processDefinitionStatisticSchema, ProcessDefinition, StatisticName, ProcessDefinitionStatistic } from './processes';
declare const getProcessDefinition: Endpoint<Pick<ProcessDefinition, 'processDefinitionKey'>>;
declare const getProcessDefinitionXml: Endpoint<Pick<ProcessDefinition, 'processDefinitionKey'>>;
declare const getProcessStartForm: Endpoint<Pick<ProcessDefinition, 'processDefinitionKey'>>;
declare const getProcessDefinitionStatisticsRequestBodySchema: z.ZodObject<{
    filter: z.ZodOptional<z.ZodObject<{
        startDate: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
            $eq: z.ZodOptional<z.ZodString>;
            $neq: z.ZodOptional<z.ZodString>;
            $exists: z.ZodOptional<z.ZodBoolean>;
            $gt: z.ZodOptional<z.ZodString>;
            $gte: z.ZodOptional<z.ZodString>;
            $lt: z.ZodOptional<z.ZodString>;
            $lte: z.ZodOptional<z.ZodString>;
            $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
        }, z.core.$strip>]>>;
        endDate: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
            $eq: z.ZodOptional<z.ZodString>;
            $neq: z.ZodOptional<z.ZodString>;
            $exists: z.ZodOptional<z.ZodBoolean>;
            $gt: z.ZodOptional<z.ZodString>;
            $gte: z.ZodOptional<z.ZodString>;
            $lt: z.ZodOptional<z.ZodString>;
            $lte: z.ZodOptional<z.ZodString>;
            $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
        }, z.core.$strip>]>>;
        state: z.ZodOptional<z.ZodObject<{
            $eq: z.ZodOptional<z.ZodEnum<{
                ACTIVE: "ACTIVE";
                COMPLETED: "COMPLETED";
                TERMINATED: "TERMINATED";
            }>>;
            $neq: z.ZodOptional<z.ZodEnum<{
                ACTIVE: "ACTIVE";
                COMPLETED: "COMPLETED";
                TERMINATED: "TERMINATED";
            }>>;
            $exists: z.ZodOptional<z.ZodBoolean>;
            $in: z.ZodOptional<z.ZodArray<z.ZodEnum<{
                ACTIVE: "ACTIVE";
                COMPLETED: "COMPLETED";
                TERMINATED: "TERMINATED";
            }>>>;
            $like: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        hasIncident: z.ZodOptional<z.ZodBoolean>;
        tenantId: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
            $eq: z.ZodOptional<z.ZodString>;
            $neq: z.ZodOptional<z.ZodString>;
            $exists: z.ZodOptional<z.ZodBoolean>;
            $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $like: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>, z.ZodString]>>;
        variables: z.ZodOptional<z.ZodArray<z.ZodObject<{
            name: z.ZodString;
            value: z.ZodString;
        }, z.core.$strip>>>;
        processInstanceKey: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
            $eq: z.ZodOptional<z.ZodString>;
            $neq: z.ZodOptional<z.ZodString>;
            $exists: z.ZodOptional<z.ZodBoolean>;
            $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
        }, z.core.$strip>, z.ZodString]>>;
        parentProcessInstanceKey: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
            $eq: z.ZodOptional<z.ZodString>;
            $neq: z.ZodOptional<z.ZodString>;
            $exists: z.ZodOptional<z.ZodBoolean>;
            $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
        }, z.core.$strip>, z.ZodString]>>;
        parentElementInstanceKey: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
            $eq: z.ZodOptional<z.ZodString>;
            $neq: z.ZodOptional<z.ZodString>;
            $exists: z.ZodOptional<z.ZodBoolean>;
            $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
        }, z.core.$strip>, z.ZodString]>>;
        batchOperationId: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
            $eq: z.ZodOptional<z.ZodString>;
            $neq: z.ZodOptional<z.ZodString>;
            $exists: z.ZodOptional<z.ZodBoolean>;
            $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $like: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>, z.ZodString]>>;
        errorMessage: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
            $eq: z.ZodOptional<z.ZodString>;
            $neq: z.ZodOptional<z.ZodString>;
            $exists: z.ZodOptional<z.ZodBoolean>;
            $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $like: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>, z.ZodString]>>;
        hasRetriesLeft: z.ZodOptional<z.ZodBoolean>;
        elementInstanceState: z.ZodOptional<z.ZodObject<{
            $eq: z.ZodOptional<z.ZodEnum<{
                ACTIVE: "ACTIVE";
                COMPLETED: "COMPLETED";
                TERMINATED: "TERMINATED";
            }>>;
            $neq: z.ZodOptional<z.ZodEnum<{
                ACTIVE: "ACTIVE";
                COMPLETED: "COMPLETED";
                TERMINATED: "TERMINATED";
            }>>;
            $exists: z.ZodOptional<z.ZodBoolean>;
            $in: z.ZodOptional<z.ZodArray<z.ZodEnum<{
                ACTIVE: "ACTIVE";
                COMPLETED: "COMPLETED";
                TERMINATED: "TERMINATED";
            }>>>;
            $like: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        elementId: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
            $eq: z.ZodOptional<z.ZodString>;
            $neq: z.ZodOptional<z.ZodString>;
            $exists: z.ZodOptional<z.ZodBoolean>;
            $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $like: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>, z.ZodString]>>;
        hasElementInstanceIncident: z.ZodOptional<z.ZodBoolean>;
        incidentErrorHashCode: z.ZodOptional<z.ZodNumber>;
        $or: z.ZodOptional<z.ZodArray<z.ZodObject<{
            startDate: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
                $eq: z.ZodOptional<z.ZodString>;
                $neq: z.ZodOptional<z.ZodString>;
                $exists: z.ZodOptional<z.ZodBoolean>;
                $gt: z.ZodOptional<z.ZodString>;
                $gte: z.ZodOptional<z.ZodString>;
                $lt: z.ZodOptional<z.ZodString>;
                $lte: z.ZodOptional<z.ZodString>;
                $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
            }, z.core.$strip>]>>;
            endDate: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
                $eq: z.ZodOptional<z.ZodString>;
                $neq: z.ZodOptional<z.ZodString>;
                $exists: z.ZodOptional<z.ZodBoolean>;
                $gt: z.ZodOptional<z.ZodString>;
                $gte: z.ZodOptional<z.ZodString>;
                $lt: z.ZodOptional<z.ZodString>;
                $lte: z.ZodOptional<z.ZodString>;
                $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
            }, z.core.$strip>]>>;
            state: z.ZodOptional<z.ZodObject<{
                $eq: z.ZodOptional<z.ZodEnum<{
                    ACTIVE: "ACTIVE";
                    COMPLETED: "COMPLETED";
                    TERMINATED: "TERMINATED";
                }>>;
                $neq: z.ZodOptional<z.ZodEnum<{
                    ACTIVE: "ACTIVE";
                    COMPLETED: "COMPLETED";
                    TERMINATED: "TERMINATED";
                }>>;
                $exists: z.ZodOptional<z.ZodBoolean>;
                $in: z.ZodOptional<z.ZodArray<z.ZodEnum<{
                    ACTIVE: "ACTIVE";
                    COMPLETED: "COMPLETED";
                    TERMINATED: "TERMINATED";
                }>>>;
                $like: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>;
            hasIncident: z.ZodOptional<z.ZodBoolean>;
            tenantId: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
                $eq: z.ZodOptional<z.ZodString>;
                $neq: z.ZodOptional<z.ZodString>;
                $exists: z.ZodOptional<z.ZodBoolean>;
                $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
                $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
                $like: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>, z.ZodString]>>;
            variables: z.ZodOptional<z.ZodArray<z.ZodObject<{
                name: z.ZodString;
                value: z.ZodString;
            }, z.core.$strip>>>;
            processInstanceKey: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
                $eq: z.ZodOptional<z.ZodString>;
                $neq: z.ZodOptional<z.ZodString>;
                $exists: z.ZodOptional<z.ZodBoolean>;
                $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
                $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
            }, z.core.$strip>, z.ZodString]>>;
            parentProcessInstanceKey: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
                $eq: z.ZodOptional<z.ZodString>;
                $neq: z.ZodOptional<z.ZodString>;
                $exists: z.ZodOptional<z.ZodBoolean>;
                $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
                $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
            }, z.core.$strip>, z.ZodString]>>;
            parentElementInstanceKey: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
                $eq: z.ZodOptional<z.ZodString>;
                $neq: z.ZodOptional<z.ZodString>;
                $exists: z.ZodOptional<z.ZodBoolean>;
                $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
                $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
            }, z.core.$strip>, z.ZodString]>>;
            batchOperationId: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
                $eq: z.ZodOptional<z.ZodString>;
                $neq: z.ZodOptional<z.ZodString>;
                $exists: z.ZodOptional<z.ZodBoolean>;
                $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
                $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
                $like: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>, z.ZodString]>>;
            errorMessage: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
                $eq: z.ZodOptional<z.ZodString>;
                $neq: z.ZodOptional<z.ZodString>;
                $exists: z.ZodOptional<z.ZodBoolean>;
                $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
                $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
                $like: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>, z.ZodString]>>;
            hasRetriesLeft: z.ZodOptional<z.ZodBoolean>;
            elementInstanceState: z.ZodOptional<z.ZodObject<{
                $eq: z.ZodOptional<z.ZodEnum<{
                    ACTIVE: "ACTIVE";
                    COMPLETED: "COMPLETED";
                    TERMINATED: "TERMINATED";
                }>>;
                $neq: z.ZodOptional<z.ZodEnum<{
                    ACTIVE: "ACTIVE";
                    COMPLETED: "COMPLETED";
                    TERMINATED: "TERMINATED";
                }>>;
                $exists: z.ZodOptional<z.ZodBoolean>;
                $in: z.ZodOptional<z.ZodArray<z.ZodEnum<{
                    ACTIVE: "ACTIVE";
                    COMPLETED: "COMPLETED";
                    TERMINATED: "TERMINATED";
                }>>>;
                $like: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>;
            elementId: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
                $eq: z.ZodOptional<z.ZodString>;
                $neq: z.ZodOptional<z.ZodString>;
                $exists: z.ZodOptional<z.ZodBoolean>;
                $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
                $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
                $like: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>, z.ZodString]>>;
            hasElementInstanceIncident: z.ZodOptional<z.ZodBoolean>;
            incidentErrorHashCode: z.ZodOptional<z.ZodNumber>;
        }, z.core.$strip>>>;
    }, z.core.$strip>>;
}, z.core.$strip>;
type GetProcessDefinitionStatisticsRequestBody = z.infer<typeof getProcessDefinitionStatisticsRequestBodySchema>;
declare const getProcessDefinitionStatisticsResponseBodySchema: z.ZodType<{
    items: {
        elementId: string;
        active: number;
        canceled: number;
        incidents: number;
        completed: number;
    }[];
}, unknown, z.core.$ZodTypeInternals<{
    items: {
        elementId: string;
        active: number;
        canceled: number;
        incidents: number;
        completed: number;
    }[];
}, unknown>>;
type GetProcessDefinitionStatisticsResponseBody = z.infer<typeof getProcessDefinitionStatisticsResponseBodySchema>;
type GetProcessDefinitionStatisticsParams = Pick<ProcessDefinition, 'processDefinitionKey'> & {
    statisticName: StatisticName;
};
declare const getProcessDefinitionStatistics: Endpoint<GetProcessDefinitionStatisticsParams>;
declare const queryProcessDefinitionsRequestBodySchema: z.ZodObject<{
    sort: z.ZodOptional<z.ZodArray<z.ZodObject<{
        field: z.ZodEnum<{
            version: "version";
            tenantId: "tenantId";
            name: "name";
            processDefinitionKey: "processDefinitionKey";
            processDefinitionId: "processDefinitionId";
            resourceName: "resourceName";
            versionTag: "versionTag";
        }>;
        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<{
        version: z.ZodOptional<z.ZodNumber>;
        tenantId: z.ZodOptional<z.ZodString>;
        processDefinitionKey: z.ZodOptional<z.ZodString>;
        resourceName: z.ZodOptional<z.ZodOptional<z.ZodString>>;
        versionTag: z.ZodOptional<z.ZodOptional<z.ZodString>>;
        hasStartForm: z.ZodOptional<z.ZodBoolean>;
        isLatestVersion: z.ZodOptional<z.ZodBoolean>;
        processDefinitionId: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
            $eq: z.ZodOptional<z.ZodString>;
            $neq: z.ZodOptional<z.ZodString>;
            $exists: z.ZodOptional<z.ZodBoolean>;
            $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $like: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>, z.ZodString]>>;
        name: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
            $eq: z.ZodOptional<z.ZodString>;
            $neq: z.ZodOptional<z.ZodString>;
            $exists: z.ZodOptional<z.ZodBoolean>;
            $in: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $notIn: z.ZodOptional<z.ZodArray<z.ZodString>>;
            $like: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>, z.ZodString]>>;
    }, z.core.$strip>>;
}, z.core.$strip>;
type QueryProcessDefinitionsRequestBody = z.infer<typeof queryProcessDefinitionsRequestBodySchema>;
declare const queryProcessDefinitionsResponseBodySchema: z.ZodType<import('./common').QueryResponseBody<{
    version: number;
    processDefinitionId: string;
    tenantId: string;
    processDefinitionKey: string;
    hasStartForm: boolean;
    name?: string | undefined;
    resourceName?: string | undefined;
    versionTag?: string | undefined;
}>, unknown, z.core.$ZodTypeInternals<import('./common').QueryResponseBody<{
    version: number;
    processDefinitionId: string;
    tenantId: string;
    processDefinitionKey: string;
    hasStartForm: boolean;
    name?: string | undefined;
    resourceName?: string | undefined;
    versionTag?: string | undefined;
}>, unknown>>;
type QueryProcessDefinitionsResponseBody = z.infer<typeof queryProcessDefinitionsResponseBodySchema>;
declare const queryProcessDefinitions: Endpoint;
export { getProcessDefinition, getProcessDefinitionXml, getProcessStartForm, getProcessDefinitionStatistics, queryProcessDefinitions, processDefinitionSchema, processDefinitionStatisticSchema, getProcessDefinitionStatisticsRequestBodySchema, getProcessDefinitionStatisticsResponseBodySchema, queryProcessDefinitionsRequestBodySchema, queryProcessDefinitionsResponseBodySchema, };
export type { ProcessDefinition, ProcessDefinitionStatistic, GetProcessDefinitionStatisticsRequestBody, GetProcessDefinitionStatisticsResponseBody, QueryProcessDefinitionsRequestBody, QueryProcessDefinitionsResponseBody, };
