import { FtCssVariables } from "@fluid-topics/ft-wc-utils"; import type { FtExternalWebComponentContext, FtExternalWebComponentContextKeys } from "@fluid-topics/public-api"; interface RootBlockContent { classes?: Array; attributes?: Record; content?: string; style?: Record; extraStyles?: Array; components?: Array; [key: string]: any; } interface BlockContent extends RootBlockContent { type: string; name?: string; } type DefaultI18nMessages = { [key in keyof T]: string; }; type I18nMessageComments = { [key in keyof T]: string; }; export interface ExternalComponentI18nContextDefinition { name: string; comment?: string; messages: DefaultI18nMessages; comments?: I18nMessageComments; } export type FluidTopicsExternalComponentsInfo = { displayName: string; version: string; icon?: string; contexts?: Array; cssVariables?: FtCssVariables; traits?: Array; asType?: (editor: any) => any; blockContent?: RootBlockContent; i18nContexts?: Array>; }; declare global { interface Window { fluidTopicsExternalComponentsInfo: Record; } } export {};