/**
 * This file is part of the NocoBase (R) project.
 * Copyright (c) 2020-2024 NocoBase Co., Ltd.
 * Authors: NocoBase Team.
 *
 * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
 * For more information, please refer to: https://www.nocobase.com/agreement.
 */
import { BaseCheckpointSaver } from '@langchain/langgraph-checkpoint';
import { SequelizeCollectionManager } from '@nocobase/data-source-manager';
export type AIConversationsType = {
    sessionId: string;
    thread: number;
};
export declare class CheckpointCleaner {
    private readonly provideCollectionManager;
    private readonly checkpointSaver;
    constructor(provideCollectionManager: () => {
        collectionManager: SequelizeCollectionManager;
    }, checkpointSaver: BaseCheckpointSaver);
    cleanOutdated(expiredAt: Date): Promise<void>;
    clean(conversations: AIConversationsType[]): Promise<void>;
    private getThreadIds;
    private get aiConversationsModel();
    private get aiMessagesModel();
    private get sequelize();
    private get collectionManager();
}
