import { Transaction } from 'sequelize';
import { Model } from 'sequelize-typescript';
import { MUserAccountId, MUserId } from '../../types/models';
import { AttributesOnly } from '../../../shared/typescript-utils';
import { VideoModel } from '../video/video';
import { UserModel } from './user';
export declare class UserVideoHistoryModel extends Model<Partial<AttributesOnly<UserVideoHistoryModel>>> {
    createdAt: Date;
    updatedAt: Date;
    currentTime: number;
    videoId: number;
    Video: VideoModel;
    userId: number;
    User: UserModel;
    static listForApi(user: MUserAccountId, start: number, count: number, search?: string): Promise<import("../../../shared/models").ResultList<VideoModel>>;
    static removeUserHistoryElement(user: MUserId, videoId: number): Promise<number>;
    static removeUserHistoryBefore(user: MUserId, beforeDate: string, t: Transaction): Promise<number>;
    static removeOldHistory(beforeDate: string): Promise<number>;
}
//# sourceMappingURL=user-video-history.d.ts.map