import { ContentTemplateConfig } from "../../flex-ui-core/src"; export interface ContentTemplateApproval { status: "unsubmitted" | "submitted"; } export type ContentTemplateTypes = keyof typeof ContentTemplateConfig.contentTemplateTypeMap; export interface ContentTemplateVariables { [key: string]: string; } export interface ContentTemplate { sid: string; friendlyName: string; language: string; variables: ContentTemplateVariables; approvalRequests: ContentTemplateApproval; types: { [key in ContentTemplateTypes]: { body: string; }; }; } export type selectedFilterProps = string[] | undefined; export type FilterItemType = { label: string; component: React.ElementType; filterName: string; options: any; }; export type FilterMapType = { [key: string]: FilterItemType; }; export type FilterType = "type" | "languages"; export type FilterListType = Array; export interface FilterProps { filterList: FilterListType; selectedFilters: SelectedFilters; setSelectedFilters: React.Dispatch>; onFilterApply: (filters: SelectedFilters) => void; } export interface SelectedFilters { [key: string]: selectedFilterProps; }