import type { BrillouinZoneData } from '../brillouin'; import { type ShowControlsProp } from '../controls'; import Spinner from '../feedback/Spinner.svelte'; import { type FullscreenToggleProp } from '../layout'; import type { CameraProjection } from '../settings'; import type { Crystal } from '../structure'; import type { ComponentProps, Snippet } from 'svelte'; import type { HTMLAttributes } from 'svelte/elements'; import type { BandGridData, ColorProperty, FermiErrorData, FermiFileLoadData, FermiHoverData, FermiSurfaceData, FermiTooltipConfig, RepresentationMode } from './types'; type FermiHandlerData = { fermi_data?: FermiSurfaceData; band_data?: BandGridData; bz_data?: BrillouinZoneData; filename?: string; file_size?: number; error_msg?: string; fullscreen?: boolean; }; type $$ComponentProps = { fermi_data?: FermiSurfaceData; band_data?: BandGridData; structure?: Crystal; bz_data?: BrillouinZoneData; mu?: number; controls_open?: boolean; color_property?: ColorProperty; color_scale?: string; custom_property_label?: string; representation?: RepresentationMode; surface_opacity?: number; selected_bands?: number[]; show_bz?: boolean; bz_opacity?: number; show_vectors?: boolean; tile_bz?: boolean; clip_enabled?: boolean; clip_axis?: `x` | `y` | `z`; clip_position?: number; clip_flip?: boolean; interpolation_factor?: number; camera_projection?: CameraProjection; show_controls?: ShowControlsProp; fullscreen?: boolean; width?: number; height?: number; wrapper?: HTMLDivElement; hovered?: boolean; dragover?: boolean; allow_file_drop?: boolean; fullscreen_toggle?: FullscreenToggleProp; data_url?: string; spinner_props?: ComponentProps; loading?: boolean; error_msg?: string; children?: Snippet<[ { fermi_data?: FermiSurfaceData; bz_data?: BrillouinZoneData; } ]>; on_file_drop?: (filename: string) => void; on_file_load?: (data: FermiFileLoadData) => void; on_error?: (data: FermiErrorData) => void; on_fullscreen_change?: (data: FermiHandlerData) => void; on_mu_change?: (mu: number) => void; tooltip_config?: Snippet<[{ hover_data: FermiHoverData; }]> | FermiTooltipConfig; on_point_hover?: (data: FermiHoverData | null) => void; on_hover?: (data: FermiHoverData | null) => void; } & HTMLAttributes; declare const FermiSurface: import("svelte").Component<$$ComponentProps, {}, "height" | "width" | "dragover" | "fullscreen" | "wrapper" | "hovered" | "controls_open" | "color_scale" | "loading" | "camera_projection" | "error_msg" | "surface_opacity" | "show_vectors" | "bz_data" | "mu" | "selected_bands" | "interpolation_factor" | "fermi_data" | "band_data" | "color_property" | "representation" | "show_bz" | "bz_opacity" | "tile_bz" | "clip_enabled" | "clip_axis" | "clip_position" | "clip_flip">; type FermiSurface = ReturnType; export default FermiSurface;