import { Autonomous } from './runtime/autonomous';
import { z } from '@botpress/sdk';
declare const configSchema: import("@bpinternal/zui").ZodObject<{
    name: import("@bpinternal/zui").ZodOptional<import("@bpinternal/zui").ZodString>;
    description: import("@bpinternal/zui").ZodOptional<import("@bpinternal/zui").ZodString>;
    user: import("@bpinternal/zui").ZodOptional<import("@bpinternal/zui").ZodObject<{
        state: import("@bpinternal/zui").ZodOptional<z.Schema<z.Schema<any, import("@bpinternal/zui").ZodTypeDef, any>, import("@bpinternal/zui").ZodTypeDef, z.Schema<any, import("@bpinternal/zui").ZodTypeDef, any>>>;
    }, "strip", {
        state?: z.Schema<any, import("@bpinternal/zui").ZodTypeDef, any> | undefined;
    }, {
        state?: z.Schema<any, import("@bpinternal/zui").ZodTypeDef, any> | undefined;
    }>>;
    bot: import("@bpinternal/zui").ZodOptional<import("@bpinternal/zui").ZodObject<{
        state: import("@bpinternal/zui").ZodOptional<z.Schema<z.Schema<any, import("@bpinternal/zui").ZodTypeDef, any>, import("@bpinternal/zui").ZodTypeDef, z.Schema<any, import("@bpinternal/zui").ZodTypeDef, any>>>;
    }, "strip", {
        state?: z.Schema<any, import("@bpinternal/zui").ZodTypeDef, any> | undefined;
    }, {
        state?: z.Schema<any, import("@bpinternal/zui").ZodTypeDef, any> | undefined;
    }>>;
    defaultModels: z.ZodTransformer<import("@bpinternal/zui").ZodOptional<import("@bpinternal/zui").ZodObject<{
        zai: z.Schema<Autonomous.Model | Autonomous.Model[], import("@bpinternal/zui").ZodTypeDef, Autonomous.Model | Autonomous.Model[]>;
        autonomous: z.Schema<Autonomous.Model | Autonomous.Model[], import("@bpinternal/zui").ZodTypeDef, Autonomous.Model | Autonomous.Model[]>;
    }, "strip", {
        zai: Autonomous.Model | Autonomous.Model[];
        autonomous: Autonomous.Model | Autonomous.Model[];
    }, {
        zai: Autonomous.Model | Autonomous.Model[];
        autonomous: Autonomous.Model | Autonomous.Model[];
    }>>, {
        zai: Autonomous.Model | Autonomous.Model[];
        autonomous: Autonomous.Model | Autonomous.Model[];
    }, {
        zai: Autonomous.Model | Autonomous.Model[];
        autonomous: Autonomous.Model | Autonomous.Model[];
    } | undefined>;
}, "strip", {
    defaultModels: {
        zai: Autonomous.Model | Autonomous.Model[];
        autonomous: Autonomous.Model | Autonomous.Model[];
    };
    description?: string | undefined;
    name?: string | undefined;
    user?: {
        state?: z.Schema<any, import("@bpinternal/zui").ZodTypeDef, any> | undefined;
    } | undefined;
    bot?: {
        state?: z.Schema<any, import("@bpinternal/zui").ZodTypeDef, any> | undefined;
    } | undefined;
}, {
    description?: string | undefined;
    name?: string | undefined;
    user?: {
        state?: z.Schema<any, import("@bpinternal/zui").ZodTypeDef, any> | undefined;
    } | undefined;
    bot?: {
        state?: z.Schema<any, import("@bpinternal/zui").ZodTypeDef, any> | undefined;
    } | undefined;
    defaultModels?: {
        zai: Autonomous.Model | Autonomous.Model[];
        autonomous: Autonomous.Model | Autonomous.Model[];
    } | undefined;
}>;
type AgentConfigProps = z.input<typeof configSchema>;
export type AgentConfig = z.output<typeof configSchema> & {
    __brand: 'AgentConfig';
};
export declare const defineConfig: (config?: AgentConfigProps) => AgentConfig;
export declare const isAgentConfig: (value: unknown) => value is AgentConfig;
export {};
//# sourceMappingURL=define-config.d.ts.map