import { ThreadableVolumeLoader, type LoadSpec, type RawChannelDataCallback, type LoadedVolumeInfo } from "./IVolumeLoader.js"; import type { ImageInfo } from "../ImageInfo.js"; import type { VolumeDims } from "../VolumeDims.js"; import { Uint8 } from "../types.js"; export type RawArrayData = { dtype: Uint8; shape: [number, number, number, number]; buffer: DataView; }; export type RawArrayInfo = { name: string; sizeX: number; sizeY: number; sizeZ: number; sizeC: number; physicalPixelSize: [number, number, number]; spatialUnit: string; channelNames: string[]; userData?: Record; }; export interface RawArrayLoaderOptions { data: RawArrayData; metadata: RawArrayInfo; } declare class RawArrayLoader extends ThreadableVolumeLoader { data: RawArrayData; jsonInfo: RawArrayInfo; constructor(rawData: RawArrayData, rawDataInfo: RawArrayInfo); loadDims(_loadSpec: LoadSpec): Promise; createImageInfo(loadSpec: LoadSpec): Promise; loadRawChannelData(imageInfo: ImageInfo, loadSpec: LoadSpec, onUpdateMetadata: (imageInfo: undefined, loadSpec: LoadSpec) => void, onData: RawChannelDataCallback): Promise; } export { RawArrayLoader };