import { Context } from 'telegraf';
import { PrismaService } from '../../common/services/prisma.service';
import { AiService } from 'src/ai/ai.service';
export declare class TestService {
    private prisma;
    private aiService;
    private userStates;
    constructor(prisma: PrismaService, aiService: AiService);
    createTest(userId: number): Promise<{
        result: string | null;
        id: number;
        createdAt: Date;
        userId: number;
        answers: import("@prisma/client/runtime/library").JsonValue;
        currentStep: number;
        completedAt: Date | null;
    }>;
    setUserState(telegramId: string, state: any): void;
    getUserState(telegramId: string): any;
    deleteUserState(telegramId: string): void;
    sendQuestion(ctx: Context, questionIndex: number): Promise<void>;
    updateTestAnswer(testId: number, questionIndex: number, answer: string): Promise<{
        result: string | null;
        id: number;
        createdAt: Date;
        userId: number;
        answers: import("@prisma/client/runtime/library").JsonValue;
        currentStep: number;
        completedAt: Date | null;
    } | null>;
    completeTest(ctx: Context, testId: number): Promise<void>;
    updateTestResult(testId: number, result: string): Promise<{
        result: string | null;
        id: number;
        createdAt: Date;
        userId: number;
        answers: import("@prisma/client/runtime/library").JsonValue;
        currentStep: number;
        completedAt: Date | null;
    }>;
    splitMessage(text: string, maxLength?: number): string[];
}
