import { ConfigParams } from 'pip-services3-commons-node';
import { IConfigurable } from 'pip-services3-commons-node';
import { IReferences } from 'pip-services3-commons-node';
import { IReferenceable } from 'pip-services3-commons-node';
import { FilterParams } from 'pip-services3-commons-node';
import { PagingParams } from 'pip-services3-commons-node';
import { DataPage } from 'pip-services3-commons-node';
import { ICommandable } from 'pip-services3-commons-node';
import { CommandSet } from 'pip-services3-commons-node';
import { AttendancesV1 } from '../data/version1/AttendancesV1';
import { AttendanceV1 } from '../data/version1/AttendanceV1';
import { IAttendanceController } from './IAttendanceController';
export declare class AttendanceController implements IConfigurable, IReferenceable, ICommandable, IAttendanceController {
    private static _defaultConfig;
    private _dependencyResolver;
    private _persistence;
    private _commandSet;
    configure(config: ConfigParams): void;
    setReferences(references: IReferences): void;
    getCommandSet(): CommandSet;
    getAttendances(correlationId: string, filter: FilterParams, paging: PagingParams, callback: (err: any, page: DataPage<AttendancesV1>) => void): void;
    private minTime;
    private maxTime;
    getAttendancesWithinTime(correlationId: string, orgId: string, fromTime: Date, toTime: Date, callback: (err: any, attendances: AttendancesV1) => void): void;
    private fixAttendance;
    private processAttendance;
    addAttendance(correlationId: string, attendance: AttendanceV1, callback: (err: any) => void): void;
    addAttendances(correlationId: string, attendances: AttendanceV1[], callback: (err: any) => void): void;
    deleteAttendances(correlationId: string, filter: FilterParams, callback: (err: any) => void): void;
}
