export interface ShopifyObject { editorDomain: string; isHotReloadInstalled: boolean; isHotReloadNavigation: boolean; theme: { id: number; }; } interface BaseHotReloadEvent { version: string; themeId: string; } export interface HotReloadOpenEvent extends BaseHotReloadEvent { type: 'open'; pid: string; } export interface HotReloadFullEvent extends BaseHotReloadEvent { type: 'full'; key: string; } export interface HotReloadFileEvent extends BaseHotReloadEvent { type: 'create' | 'update' | 'delete'; key: string; sync: 'local' | 'remote'; payload?: { isThemeExtension?: boolean; sectionNames?: string[]; replaceTemplates?: { [key: string]: string; }; updatedFileParts?: { javascriptTag: boolean; stylesheetTag: boolean; schemaTag: boolean; liquid: boolean; }; }; } export type HotReloadEvent = HotReloadOpenEvent | HotReloadFullEvent | HotReloadFileEvent; export {};