(feat): improve local storage security (feat): move settings to dedicated settings package
80 lines
2 KiB
TypeScript
80 lines
2 KiB
TypeScript
export type DesktopScreenShareSource = {
|
|
id: string;
|
|
kind: "screen" | "window";
|
|
name: string;
|
|
subtitle?: string | null;
|
|
thumbnail?: string | null;
|
|
};
|
|
|
|
export type DesktopScreenShareAudioOutput = {
|
|
id: string;
|
|
name: string;
|
|
isDefault: boolean;
|
|
};
|
|
|
|
export type DesktopScreenShareCapabilities = {
|
|
runtime: "electron";
|
|
platform: "linux" | "macos" | "windows" | "other";
|
|
showAudioOutputSelector: boolean;
|
|
showAudioSwitch: boolean;
|
|
hasReliableSystemAudio: boolean;
|
|
};
|
|
|
|
export type DesktopCallStatus = {
|
|
inCall: boolean;
|
|
speaking: boolean;
|
|
iconDataUrl?: string;
|
|
};
|
|
|
|
export type DesktopSecureStorageStatus = {
|
|
available: boolean;
|
|
backend: string | null;
|
|
};
|
|
|
|
export const secureStorageLimits = {
|
|
maxKeyBytes: 256,
|
|
maxValueBytes: 1024 * 1024,
|
|
} as const;
|
|
|
|
export type ReleaseArtifact = {
|
|
name: string;
|
|
platform: string;
|
|
arch: string;
|
|
url: string;
|
|
sha256: string;
|
|
size: number;
|
|
};
|
|
|
|
export type ReleaseMetadata = {
|
|
version: string;
|
|
tag: string;
|
|
publishedAt: string;
|
|
artifacts: ReleaseArtifact[];
|
|
};
|
|
|
|
export type UpdateCheckResult =
|
|
| { available: false; currentVersion: string; latestVersion: string }
|
|
| {
|
|
available: true;
|
|
currentVersion: string;
|
|
latestVersion: string;
|
|
artifact: ReleaseArtifact;
|
|
};
|
|
|
|
export const ipcChannels = {
|
|
listScreenShareSources: "desktopMedia:listScreenShareSources",
|
|
listScreenShareAudioOutputs: "desktopMedia:listScreenShareAudioOutputs",
|
|
getScreenShareCapabilities: "desktopMedia:getScreenShareCapabilities",
|
|
selectScreenShareSource: "desktopMedia:selectScreenShareSource",
|
|
minimizeWindow: "window:minimize",
|
|
maximizeWindow: "window:maximize",
|
|
closeWindow: "window:close",
|
|
getVersion: "app:getVersion",
|
|
checkForUpdates: "updates:checkForUpdates",
|
|
setCallStatus: "call:setStatus",
|
|
getSecureStorageStatus: "secureStorage:getStatus",
|
|
loadSecureStorage: "secureStorage:load",
|
|
saveSecureStorage: "secureStorage:save",
|
|
deleteSecureStorage: "secureStorage:delete",
|
|
clearSecureStorage: "secureStorage:clear",
|
|
} as const;
|