import type { Request } from 'express';
import { PrismaService } from "../../../core/database/prisma/prisma.service";
import { MeetingAttendanceAuditLogWriter } from './audit-log-writer.service';
export interface PtoMarkingResult {
    meetingId: string;
    marked: number;
    details: Array<{
        userId: string;
        previousStatus: string;
        scheduleId: string;
    }>;
}
type Actor = {
    userId?: string;
    id?: string;
    email?: string;
    displayName?: string;
    username?: string;
    roles?: any[];
};
export declare class MeetingPtoMarkingService {
    private readonly prisma;
    private readonly auditLogWriter;
    private readonly logger;
    constructor(prisma: PrismaService, auditLogWriter: MeetingAttendanceAuditLogWriter);
    applyForMeeting(meetingId: string, actor?: Actor, request?: Request): Promise<PtoMarkingResult>;
    applyForMeetingFireAndForget(meetingId: string): void;
}
export {};
