gradio

Форк
0
/
types.ts 
75 строк · 1.7 Кб
1
import type { ComponentType } from "svelte";
2
import type { SvelteComponent } from "svelte";
3

4
interface ComponentImport {
5
	interactive: SvelteComponent;
6
	static: SvelteComponent;
7
	example: SvelteComponent;
8
}
9

10
export interface ComponentMeta {
11
	type: string;
12
	id: number;
13
	has_modes: boolean;
14
	props: Record<string, unknown> & { interactive: boolean };
15
	instance: SvelteComponent;
16
	component: ComponentType<SvelteComponent>;
17
	documentation?: Documentation;
18
	children?: ComponentMeta[];
19
	value?: any;
20
	component_class_id: string;
21
}
22

23
export interface DependencyTypes {
24
	continuous: boolean;
25
	generator: boolean;
26
}
27

28
export interface Payload {
29
	fn_index: number;
30
	data: unknown[];
31
	event_data: unknown | null;
32
	trigger_id: number | null;
33
}
34

35
export interface Dependency {
36
	targets: [number, string][];
37
	inputs: number[];
38
	outputs: number[];
39
	backend_fn: boolean;
40
	js: string | null;
41
	scroll_to_output: boolean;
42
	show_progress: "full" | "minimal" | "hidden";
43
	frontend_fn?: (...args: unknown[]) => Promise<unknown[]>;
44
	status?: string;
45
	queue: boolean | null;
46
	api_name: string | null;
47
	cancels: number[];
48
	types: DependencyTypes;
49
	collects_event_data: boolean;
50
	pending_request?: boolean;
51
	trigger_after?: number;
52
	trigger_only_on_success?: boolean;
53
	trigger_mode: "once" | "multiple" | "always_last";
54
	final_event: Payload | null;
55
	show_api: boolean;
56
}
57

58
interface TypeDescription {
59
	input_payload?: string;
60
	response_object?: string;
61
	payload?: string;
62
}
63

64
export interface Documentation {
65
	type?: TypeDescription;
66
	description?: TypeDescription;
67
	example_data?: string;
68
}
69

70
export interface LayoutNode {
71
	id: number;
72
	children: LayoutNode[];
73
}
74

75
export type ThemeMode = "system" | "light" | "dark";
76

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.