@knopkem/dicomview 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,183 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+
4
+ /**
5
+ * One JS-visible viewer instance managing four canvases.
6
+ */
7
+ export class Viewer {
8
+ private constructor();
9
+ free(): void;
10
+ [Symbol.dispose](): void;
11
+ /**
12
+ * Creates a new viewer bound to four canvas elements.
13
+ */
14
+ static create(config: any): Promise<Viewer>;
15
+ /**
16
+ * Explicitly destroys the viewer and releases its resources.
17
+ */
18
+ destroy(): void;
19
+ /**
20
+ * Decodes one DICOM Part 10 payload and uploads its frame data.
21
+ */
22
+ feed_dicom_slice(z_index: number, bytes: Uint8Array): void;
23
+ /**
24
+ * Uploads one already-decoded signed 16-bit slice.
25
+ */
26
+ feed_pixel_slice(z_index: number, pixels: Int16Array): void;
27
+ /**
28
+ * Returns the current loading progress in `[0, 1]`.
29
+ */
30
+ loading_progress(): number;
31
+ /**
32
+ * Orbits the 3D volume camera.
33
+ */
34
+ orbit(dx: number, dy: number): void;
35
+ /**
36
+ * Pans the 3D volume camera.
37
+ */
38
+ pan(dx: number, dy: number): void;
39
+ /**
40
+ * Prepares an empty volume with the provided geometry object.
41
+ */
42
+ prepare_volume(geometry: any): void;
43
+ /**
44
+ * Renders all four canvases.
45
+ */
46
+ render(): void;
47
+ /**
48
+ * Resets all viewport state back to defaults.
49
+ */
50
+ reset(): void;
51
+ /**
52
+ * Scrolls one of the three slice viewports.
53
+ */
54
+ scroll_slice(viewport: number, delta: number): void;
55
+ /**
56
+ * Selects the active volume blend mode.
57
+ */
58
+ set_blend_mode(mode: number): void;
59
+ /**
60
+ * Updates the shared MPR crosshair in world coordinates.
61
+ */
62
+ set_crosshair(x: number, y: number, z: number): void;
63
+ /**
64
+ * Configures thick-slab rendering for one slice viewport.
65
+ */
66
+ set_thick_slab(viewport: number, thickness: number, projection: number): void;
67
+ /**
68
+ * Switches to one of the built-in volume presets.
69
+ */
70
+ set_volume_preset(name: string): void;
71
+ /**
72
+ * Applies one window/level setting to all viewports.
73
+ */
74
+ set_window_level(center: number, width: number): void;
75
+ /**
76
+ * Zooms the 3D volume camera.
77
+ */
78
+ zoom(factor: number): void;
79
+ }
80
+
81
+ /**
82
+ * A simple WADO-RS series loader with progress reporting and abort support.
83
+ */
84
+ export class WadoLoader {
85
+ free(): void;
86
+ [Symbol.dispose](): void;
87
+ /**
88
+ * Aborts any active in-flight requests.
89
+ */
90
+ abort(): void;
91
+ /**
92
+ * Loads a single-frame DICOM series through WADO-RS metadata and instance retrieval.
93
+ */
94
+ load_series(viewer: Viewer, wado_root: string, study_uid: string, series_uid: string): Promise<void>;
95
+ /**
96
+ * Returns how many slices have been loaded so far.
97
+ */
98
+ loaded(): number;
99
+ /**
100
+ * Creates a new loader.
101
+ */
102
+ constructor();
103
+ /**
104
+ * Returns the total number of slices expected.
105
+ */
106
+ total(): number;
107
+ }
108
+
109
+ /**
110
+ * Decodes one single-frame DICOM Part 10 payload into signed 16-bit pixels.
111
+ */
112
+ export function decode_dicom_pixels(bytes: Uint8Array): Int16Array;
113
+
114
+ /**
115
+ * Initializes the panic hook used by the wasm facade.
116
+ */
117
+ export function init(): void;
118
+
119
+ export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
120
+
121
+ export interface InitOutput {
122
+ readonly memory: WebAssembly.Memory;
123
+ readonly __wbg_viewer_free: (a: number, b: number) => void;
124
+ readonly viewer_create: (a: any) => any;
125
+ readonly viewer_destroy: (a: number) => void;
126
+ readonly viewer_feed_dicom_slice: (a: number, b: number, c: number, d: number) => [number, number];
127
+ readonly viewer_feed_pixel_slice: (a: number, b: number, c: number, d: number) => [number, number];
128
+ readonly viewer_loading_progress: (a: number) => number;
129
+ readonly viewer_orbit: (a: number, b: number, c: number) => [number, number];
130
+ readonly viewer_pan: (a: number, b: number, c: number) => [number, number];
131
+ readonly viewer_prepare_volume: (a: number, b: any) => [number, number];
132
+ readonly viewer_render: (a: number) => [number, number];
133
+ readonly viewer_reset: (a: number) => [number, number];
134
+ readonly viewer_scroll_slice: (a: number, b: number, c: number) => [number, number];
135
+ readonly viewer_set_blend_mode: (a: number, b: number) => [number, number];
136
+ readonly viewer_set_crosshair: (a: number, b: number, c: number, d: number) => [number, number];
137
+ readonly viewer_set_thick_slab: (a: number, b: number, c: number, d: number) => [number, number];
138
+ readonly viewer_set_volume_preset: (a: number, b: number, c: number) => [number, number];
139
+ readonly viewer_set_window_level: (a: number, b: number, c: number) => [number, number];
140
+ readonly viewer_zoom: (a: number, b: number) => [number, number];
141
+ readonly __wbg_wadoloader_free: (a: number, b: number) => void;
142
+ readonly wadoloader_abort: (a: number) => void;
143
+ readonly wadoloader_load_series: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => any;
144
+ readonly wadoloader_loaded: (a: number) => number;
145
+ readonly wadoloader_new: () => number;
146
+ readonly wadoloader_total: (a: number) => number;
147
+ readonly decode_dicom_pixels: (a: number, b: number) => [number, number, number, number];
148
+ readonly init: () => void;
149
+ readonly wasm_bindgen__convert__closures_____invoke__h77f088fde8c66f5c: (a: number, b: number, c: any) => [number, number];
150
+ readonly wasm_bindgen__convert__closures_____invoke__h6a18030bf0401ad0: (a: number, b: number, c: any, d: any) => void;
151
+ readonly wasm_bindgen__convert__closures_____invoke__h4c19ef90e3a2449e: (a: number, b: number, c: any) => void;
152
+ readonly __wbindgen_malloc: (a: number, b: number) => number;
153
+ readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
154
+ readonly __wbindgen_exn_store: (a: number) => void;
155
+ readonly __externref_table_alloc: () => number;
156
+ readonly __wbindgen_externrefs: WebAssembly.Table;
157
+ readonly __wbindgen_free: (a: number, b: number, c: number) => void;
158
+ readonly __wbindgen_destroy_closure: (a: number, b: number) => void;
159
+ readonly __externref_table_dealloc: (a: number) => void;
160
+ readonly __wbindgen_start: () => void;
161
+ }
162
+
163
+ export type SyncInitInput = BufferSource | WebAssembly.Module;
164
+
165
+ /**
166
+ * Instantiates the given `module`, which can either be bytes or
167
+ * a precompiled `WebAssembly.Module`.
168
+ *
169
+ * @param {{ module: SyncInitInput }} module - Passing `SyncInitInput` directly is deprecated.
170
+ *
171
+ * @returns {InitOutput}
172
+ */
173
+ export function initSync(module: { module: SyncInitInput } | SyncInitInput): InitOutput;
174
+
175
+ /**
176
+ * If `module_or_path` is {RequestInfo} or {URL}, makes a request and
177
+ * for everything else, calls `WebAssembly.instantiate` directly.
178
+ *
179
+ * @param {{ module_or_path: InitInput | Promise<InitInput> }} module_or_path - Passing `InitInput` directly is deprecated.
180
+ *
181
+ * @returns {Promise<InitOutput>}
182
+ */
183
+ export default function __wbg_init (module_or_path?: { module_or_path: InitInput | Promise<InitInput> } | InitInput | Promise<InitInput>): Promise<InitOutput>;