import { Transaction } from 'sequelize';
import { MVideo, MVideoFullLight, MVideoUUID } from '../types/models';
import { VideoState } from '../../shared/models';
declare function buildNextVideoState(currentState?: VideoState): VideoState.PUBLISHED | VideoState.TO_TRANSCODE | VideoState.TO_MOVE_TO_EXTERNAL_STORAGE;
declare function moveToNextState(video: MVideoUUID, isNewVideo?: boolean): Promise<boolean | void>;
declare function moveToExternalStorageState(video: MVideoFullLight, isNewVideo: boolean, transaction: Transaction): Promise<boolean>;
declare function moveToFailedTranscodingState(video: MVideo): Promise<void>;
declare function moveToFailedMoveToObjectStorageState(video: MVideo): Promise<void>;
export { buildNextVideoState, moveToExternalStorageState, moveToFailedTranscodingState, moveToFailedMoveToObjectStorageState, moveToNextState };
//# sourceMappingURL=video-state.d.ts.map