import { GradeConfigService, GradeDefinition } from '../services/grade-config.service';
import { CreateGradeConfigDto, UpdateGradeConfigDto } from '../dto/grade-config.dto';
export declare class GradeConfigController {
    private readonly gradeConfigService;
    constructor(gradeConfigService: GradeConfigService);
    findAll(isActive?: boolean): Promise<{
        items: {
            id: string;
            createdAt: Date;
            name: string;
            updatedAt: Date;
            deletedAt: Date | null;
            description: string | null;
            organizationId: string | null;
            isActive: boolean;
            createdBy: string;
            isDefault: boolean;
            grades: import("@prisma/client/runtime/library").JsonValue;
        }[];
    }>;
    findDefault(): Promise<any>;
    getGradesForSelect(): Promise<{
        id: string;
        name: string;
    }[]>;
    findById(id: string): Promise<any>;
    create(dto: CreateGradeConfigDto, userId: string): Promise<{
        id: string;
        createdAt: Date;
        name: string;
        updatedAt: Date;
        deletedAt: Date | null;
        description: string | null;
        organizationId: string | null;
        isActive: boolean;
        createdBy: string;
        isDefault: boolean;
        grades: import("@prisma/client/runtime/library").JsonValue;
    }>;
    update(id: string, dto: UpdateGradeConfigDto): Promise<{
        id: string;
        createdAt: Date;
        name: string;
        updatedAt: Date;
        deletedAt: Date | null;
        description: string | null;
        organizationId: string | null;
        isActive: boolean;
        createdBy: string;
        isDefault: boolean;
        grades: import("@prisma/client/runtime/library").JsonValue;
    }>;
    delete(id: string): Promise<{
        id: string;
    }>;
    setDefault(id: string): Promise<any>;
    validateGrades(grades: GradeDefinition[]): Promise<{
        valid: boolean;
        message: string | undefined;
    }>;
}
