import { Request, Response } from 'express';
import { VideoLoadType } from '../../../lib/model-loaders';
import { MUser, MUserAccountId, MVideo, MVideoAccountLight, MVideoWithRights } from '../../../types/models';
import { UserRight } from '../../../../shared/models';
declare function doesVideoExist(id: number | string, res: Response, fetchType?: VideoLoadType): Promise<boolean>;
declare function doesVideoFileOfVideoExist(id: number, videoIdOrUUID: number | string, res: Response): Promise<boolean>;
declare function doesVideoChannelOfAccountExist(channelId: number, user: MUserAccountId, res: Response): Promise<boolean>;
declare function checkCanSeeVideoIfPrivate(req: Request, res: Response, video: MVideo, authenticateInQuery?: boolean): Promise<boolean>;
declare function checkCanSeePrivateVideo(req: Request, res: Response, video: MVideoWithRights, authenticateInQuery?: boolean): Promise<boolean>;
declare function checkUserCanManageVideo(user: MUser, video: MVideoAccountLight, right: UserRight, res: Response, onlyOwned?: boolean): boolean;
export { doesVideoChannelOfAccountExist, doesVideoExist, doesVideoFileOfVideoExist, checkUserCanManageVideo, checkCanSeeVideoIfPrivate, checkCanSeePrivateVideo };
//# sourceMappingURL=videos.d.ts.map