import { VideoPlaylistElementModel } from '../../../models/video/video-playlist-element';
import { PickWith } from '../../../../shared/typescript-utils';
import { MVideoFormattable, MVideoThumbnail, MVideoUrl } from './video';
import { MVideoPlaylistPrivacy } from './video-playlist';
declare type Use<K extends keyof VideoPlaylistElementModel, M> = PickWith<VideoPlaylistElementModel, K, M>;
export declare type MVideoPlaylistElement = Omit<VideoPlaylistElementModel, 'VideoPlaylist' | 'Video'>;
export declare type MVideoPlaylistElementId = Pick<MVideoPlaylistElement, 'id'>;
export declare type MVideoPlaylistElementLight = Pick<MVideoPlaylistElement, 'id' | 'videoId' | 'startTimestamp' | 'stopTimestamp'>;
export declare type MVideoPlaylistVideoThumbnail = MVideoPlaylistElement & Use<'Video', MVideoThumbnail>;
export declare type MVideoPlaylistElementVideoUrlPlaylistPrivacy = MVideoPlaylistElement & Use<'Video', MVideoUrl> & Use<'VideoPlaylist', MVideoPlaylistPrivacy>;
export declare type MVideoPlaylistElementFormattable = MVideoPlaylistElement & Use<'Video', MVideoFormattable>;
export declare type MVideoPlaylistElementAP = MVideoPlaylistElement & Use<'Video', MVideoUrl>;
export {};
//# sourceMappingURL=video-playlist-element.d.ts.map