50 lines
1 KiB
TypeScript
50 lines
1 KiB
TypeScript
type PathLike = string;
|
|
type Duration = string;
|
|
type SocketAddr = string;
|
|
|
|
interface RqbitDesktopConfigDht {
|
|
disable: boolean;
|
|
disable_persistence: boolean;
|
|
persistence_filename: PathLike;
|
|
}
|
|
|
|
interface RqbitDesktopConfigTcpListen {
|
|
disable: boolean;
|
|
min_port: number;
|
|
max_port: number;
|
|
}
|
|
|
|
interface RqbitDesktopConfigPersistence {
|
|
disable: boolean;
|
|
filename: PathLike;
|
|
}
|
|
|
|
interface RqbitDesktopConfigPeerOpts {
|
|
connect_timeout: Duration;
|
|
read_write_timeout: Duration;
|
|
}
|
|
|
|
interface RqbitDesktopConfigHttpApi {
|
|
disable: boolean;
|
|
listen_addr: SocketAddr;
|
|
read_only: boolean;
|
|
}
|
|
|
|
interface RqbitDesktopConfigUpnp {
|
|
disable: boolean;
|
|
}
|
|
|
|
export interface RqbitDesktopConfig {
|
|
default_download_location: PathLike;
|
|
dht: RqbitDesktopConfigDht;
|
|
tcp_listen: RqbitDesktopConfigTcpListen;
|
|
upnp: RqbitDesktopConfigUpnp;
|
|
persistence: RqbitDesktopConfigPersistence;
|
|
peer_opts: RqbitDesktopConfigPeerOpts;
|
|
http_api: RqbitDesktopConfigHttpApi;
|
|
}
|
|
|
|
export interface CurrentDesktopState {
|
|
config: RqbitDesktopConfig | null;
|
|
configured: boolean;
|
|
}
|