export interface ICard {
	videoSrc: string;
	title?: string;
	description?: string;
	/** ISO strings from JSON become `Date` after processing. */
	time?: Date | string;
	pageUri?: string;
	_id?: string;
	provider?: "youtube";
	dateformat?: string;
}

export type Component = {
	id?: string;
	style?: string;
	cards: string | ICard[];
	size?: number | string;
	page?: number | string;
	pages?: number | string;
	linkLabel?: string;
	dateformat?: string;
	primarycolor?: string;
	filter?: string;
	externalfilter?: string;
	disabletextfilter?: string;
	initialdate?: Date | string;
	lastdate?: Date | string;
};

export type Events = {
	pageChange: { page: number; cards: ICard[] };
	textFilterVideos: { filter?: string };
	dateFilterVideos: {
		start?: Date;
		end?: Date;
		dateKey: "start" | "end";
	};
};
