import { AgentsStorage } from '@mastra/core/storage';
import type { StorageAgentType, StorageCreateAgentInput, StorageUpdateAgentInput, StorageListAgentsInput, StorageListAgentsOutput, AgentVersion, CreateVersionInput, ListVersionsInput, ListVersionsOutput } from '@mastra/core/storage';
import type { LibSQLDomainConfig } from '../../db/index.js';
export declare class AgentsLibSQL extends AgentsStorage {
    #private;
    constructor(config: LibSQLDomainConfig);
    init(): Promise<void>;
    dangerouslyClearAll(): Promise<void>;
    private parseJson;
    private parseRow;
    getById(id: string): Promise<StorageAgentType | null>;
    create(input: {
        agent: StorageCreateAgentInput;
    }): Promise<StorageAgentType>;
    update(input: StorageUpdateAgentInput): Promise<StorageAgentType>;
    delete(id: string): Promise<void>;
    list(args?: StorageListAgentsInput): Promise<StorageListAgentsOutput>;
    createVersion(input: CreateVersionInput): Promise<AgentVersion>;
    getVersion(id: string): Promise<AgentVersion | null>;
    getVersionByNumber(agentId: string, versionNumber: number): Promise<AgentVersion | null>;
    getLatestVersion(agentId: string): Promise<AgentVersion | null>;
    listVersions(input: ListVersionsInput): Promise<ListVersionsOutput>;
    deleteVersion(id: string): Promise<void>;
    deleteVersionsByParentId(entityId: string): Promise<void>;
    countVersions(agentId: string): Promise<number>;
    private serializeInstructions;
    private deserializeInstructions;
    private parseVersionRow;
}
//# sourceMappingURL=index.d.ts.map