import z from 'zod';
/**
 * Shared memory configuration schemas for agent storage
 * These schemas match the SerializedMemoryConfig type from @mastra/core
 */
/**
 * Semantic recall configuration for vector-based memory retrieval
 */
export declare const semanticRecallSchema: z.ZodObject<{
    topK: z.ZodNumber;
    messageRange: z.ZodUnion<[z.ZodNumber, z.ZodObject<{
        before: z.ZodNumber;
        after: z.ZodNumber;
    }, "strip", z.ZodTypeAny, {
        before: number;
        after: number;
    }, {
        before: number;
        after: number;
    }>]>;
    scope: z.ZodOptional<z.ZodEnum<["thread", "resource"]>>;
    threshold: z.ZodOptional<z.ZodNumber>;
    indexName: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    topK: number;
    messageRange: number | {
        before: number;
        after: number;
    };
    scope?: "thread" | "resource" | undefined;
    threshold?: number | undefined;
    indexName?: string | undefined;
}, {
    topK: number;
    messageRange: number | {
        before: number;
        after: number;
    };
    scope?: "thread" | "resource" | undefined;
    threshold?: number | undefined;
    indexName?: string | undefined;
}>;
/**
 * Title generation configuration
 * When stored, the model is serialized as a ModelRouterModelId string (provider/model-name format)
 */
export declare const titleGenerationSchema: z.ZodUnion<[z.ZodBoolean, z.ZodObject<{
    model: z.ZodString;
    instructions: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    model: string;
    instructions?: string | undefined;
}, {
    model: string;
    instructions?: string | undefined;
}>]>;
/**
 * Serialized memory configuration matching SerializedMemoryConfig from @mastra/core
 *
 * Note: workingMemory and threads are omitted as they are not part of SerializedMemoryConfig
 * @see packages/core/src/memory/types.ts
 */
export declare const serializedMemoryConfigSchema: z.ZodObject<{
    vector: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodLiteral<false>]>>;
    options: z.ZodOptional<z.ZodObject<{
        readOnly: z.ZodOptional<z.ZodBoolean>;
        lastMessages: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodLiteral<false>]>>;
        semanticRecall: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodObject<{
            topK: z.ZodNumber;
            messageRange: z.ZodUnion<[z.ZodNumber, z.ZodObject<{
                before: z.ZodNumber;
                after: z.ZodNumber;
            }, "strip", z.ZodTypeAny, {
                before: number;
                after: number;
            }, {
                before: number;
                after: number;
            }>]>;
            scope: z.ZodOptional<z.ZodEnum<["thread", "resource"]>>;
            threshold: z.ZodOptional<z.ZodNumber>;
            indexName: z.ZodOptional<z.ZodString>;
        }, "strip", z.ZodTypeAny, {
            topK: number;
            messageRange: number | {
                before: number;
                after: number;
            };
            scope?: "thread" | "resource" | undefined;
            threshold?: number | undefined;
            indexName?: string | undefined;
        }, {
            topK: number;
            messageRange: number | {
                before: number;
                after: number;
            };
            scope?: "thread" | "resource" | undefined;
            threshold?: number | undefined;
            indexName?: string | undefined;
        }>]>>;
        generateTitle: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodObject<{
            model: z.ZodString;
            instructions: z.ZodOptional<z.ZodString>;
        }, "strip", z.ZodTypeAny, {
            model: string;
            instructions?: string | undefined;
        }, {
            model: string;
            instructions?: string | undefined;
        }>]>>;
    }, "strip", z.ZodTypeAny, {
        readOnly?: boolean | undefined;
        lastMessages?: number | false | undefined;
        semanticRecall?: boolean | {
            topK: number;
            messageRange: number | {
                before: number;
                after: number;
            };
            scope?: "thread" | "resource" | undefined;
            threshold?: number | undefined;
            indexName?: string | undefined;
        } | undefined;
        generateTitle?: boolean | {
            model: string;
            instructions?: string | undefined;
        } | undefined;
    }, {
        readOnly?: boolean | undefined;
        lastMessages?: number | false | undefined;
        semanticRecall?: boolean | {
            topK: number;
            messageRange: number | {
                before: number;
                after: number;
            };
            scope?: "thread" | "resource" | undefined;
            threshold?: number | undefined;
            indexName?: string | undefined;
        } | undefined;
        generateTitle?: boolean | {
            model: string;
            instructions?: string | undefined;
        } | undefined;
    }>>;
}, "strip", z.ZodTypeAny, {
    options?: {
        readOnly?: boolean | undefined;
        lastMessages?: number | false | undefined;
        semanticRecall?: boolean | {
            topK: number;
            messageRange: number | {
                before: number;
                after: number;
            };
            scope?: "thread" | "resource" | undefined;
            threshold?: number | undefined;
            indexName?: string | undefined;
        } | undefined;
        generateTitle?: boolean | {
            model: string;
            instructions?: string | undefined;
        } | undefined;
    } | undefined;
    vector?: string | false | undefined;
}, {
    options?: {
        readOnly?: boolean | undefined;
        lastMessages?: number | false | undefined;
        semanticRecall?: boolean | {
            topK: number;
            messageRange: number | {
                before: number;
                after: number;
            };
            scope?: "thread" | "resource" | undefined;
            threshold?: number | undefined;
            indexName?: string | undefined;
        } | undefined;
        generateTitle?: boolean | {
            model: string;
            instructions?: string | undefined;
        } | undefined;
    } | undefined;
    vector?: string | false | undefined;
}>;
//# sourceMappingURL=memory-config.d.ts.map