Fix Types

This commit is contained in:
thororen1234 2025-12-21 13:57:23 -05:00
parent 7de7c05b17
commit 64e50abd0c
No known key found for this signature in database
6 changed files with 166 additions and 20 deletions

View file

@ -1,6 +1,134 @@
import { FluxStore } from "..";
type VideoDevice = {
containerId: string;
disabled: boolean;
effects: any;
facing: string;
guid: string;
hardwareId: string;
id: string;
index: number;
name: string;
};
type GoLiveSource = {
desktopSource: {
id: string;
sourcePid: number | null;
soundshareId: string | null;
soundshareSession: string | null;
};
quality: {
resolution: number;
frameRate: number;
};
};
type CodecCapabilities = (codecs: string) => void;
interface MediaEngine {
connectionsEmpty(): boolean;
getAudioLayer(): boolean;
getCodecCapabilities(callback: (CodecCapabilities: string) => void): string;
getDebugLogging(): boolean;
setAecDump(value: boolean): void;
setAv1Enabled(value: boolean): void;
setDebugLogging(value: boolean): void;
setH265Enabled(value: boolean): void;
setH264Enabled(value: boolean): void;
setInputVolume(volume: number): void;
setLoopback(reason: string, enabled: boolean): void;
setNoiseCancellationEnableStats(value: boolean): void;
setOutputVolume(volume: number): void;
setSidechainCompression(value: boolean): void;
setSidechainCompressionStrength(strength: number): void;
setVideoInputDevice(deviceId: string): void;
startAecDump(): void;
stopAecDump(): void;
stopLocalAudioRecording(): void;
stopRecordingRawSamples(): void;
supported(): boolean;
supports(value: string): boolean;
writeAudioDebugState(): Promise<never>;
}
export class MediaEngineStore extends FluxStore {
getActiveInputProfile(): string;
getActiveVoiceFilter(): string | null;
getActiveVoiceFilterAppliedAt(): Date | null;
getAecDump(): boolean;
getAttenuateWhileSpeakingOthers(): boolean;
getAttenuateWhileSpeakingSelf(): boolean;
getAttenuation(): number;
getAudioSubsystem(): string;
getAutomaticGainControl(): boolean;
getBypassSystemInputProcessing(): boolean;
getCameraComponent(): (e: any) => any;
getDebugLogging(): boolean;
getEchoCancellation(): boolean;
getEnableSilenceWarning(): boolean;
getEverSpeakingWhileMuted(): boolean;
getExperimentalSoundshare(): boolean;
getGoLiveContext(): string;
getGoLiveSource(): GoLiveSource | null;
getGpuBrand(): string;
getH265Enabled(): boolean;
getHardwareEncoding(): boolean;
getInputDetected(): boolean | null;
getInputDeviceId(): string;
getInputDevices(): Record<string, VideoDevice>;
getInputVolume(): number;
getKrispEnableStats(): boolean;
getKrispModelOverride(): string;
getKrispModels(): string[];
getKrispSuppressionLevel(): number;
getKrispVadActivationThreshold(): number;
getLastAudioInputDeviceChangeTimestamp(): number;
getLocalPan(key: string): Record<string, number>;
getLocalVolume(): number;
getLoopback(): boolean;
getLoopbackReasons(): Set<string>;
getMediaEngine(): MediaEngine;
getMode(): string;
getModeOptions(): Record<string, number | boolean>;
getMostRecentlyRequestedVoiceFilter(): string | null;
getNoInputDetectedNotice(): boolean;
getNoiseCancellation(): boolean;
getNoiseSuppression(): boolean;
getOutputDeviceId(): string;
getOutputDevices(): Record<string, VideoDevice>;
getOutputVolume(): number;
getPacketDelay(): number;
getPreviousVoiceFilter(): string | null;
getPreviousVoiceFilterAppliedAt(): Date | null;
getQoS(): boolean;
getSettings(): Record<string, any>;
getShortcuts(): Record<string, any>;
getSidechainCompression(): boolean;
getSidechainCompressionStrength(): number;
getSpeakingWhileMuted(): boolean;
getSupportedSecureFramesProtocolVersion(): boolean;
getSystemMicrophoneMode(): boolean;
getUseGamescopeCapture(): boolean;
getUseSystemScreensharePicker(): boolean;
getUseVaapiEncoder(): boolean;
getVideoComponent(): (e: any) => any;
getVideoDeviceId(): string;
getVideoDevices(): Record<string, VideoDevice>;
getVideoHook(): boolean;
getVideoStreamParameters(): Record<string, string | number>;
getVideoToggleState(key: string): string;
getVoiceFilterPlaybackEnabled(): boolean;
goLiveSimulcastEnabled(): boolean;
hasActiveCallKitCall(): boolean;
hasClipsSource(): boolean;
hasContext(key: string): boolean;
hasH265HardwareDecode(): boolean;
isAdvancedVoiceActivitySupported(): boolean;
isAecDumpSupported(): boolean;
isAnyLocalVideoAutoDisabled(): boolean;
@ -8,14 +136,13 @@ export class MediaEngineStore extends FluxStore {
isDeaf(): boolean;
isEnableHardwareMuteNotice(): boolean;
isEnabled(): boolean;
isExperimentalEncodersSupported(): boolean;
isHardwareMute(): boolean;
isInputProfileCustom(): boolean;
isInteractionRequired(): boolean;
isLocalMute(): boolean;
isLocalMute(userId): boolean;
isLocalVideoAutoDisabled(userId): boolean;
isLocalVideoDisabled(userId): boolean;
isLocalMute(userId: string): boolean;
isLocalVideoAutoDisabled(userId: string): boolean;
isLocalVideoDisabled(userId: string): boolean;
isLocalVideoDisabled(): boolean;
isMediaFilterSettingLoading(): boolean;
isMute(): boolean;
@ -33,12 +160,21 @@ export class MediaEngineStore extends FluxStore {
isVideoAvailable(): boolean;
isVideoEnabled(): boolean;
setAv1Enabled(AV1: boolean): void;
setH265Enabled(H265: boolean): void;
setH264Enabled(H264: boolean): void;
notifyMuteUnmuteSoundWasSkipped(): boolean;
setCanHavePriority(userId: string, value: boolean): void;
setHasActiveCallKitCall(active: boolean): void;
shouldOfferManualSubsystemSelection(): boolean;
shouldSkipMuteUnmuteSound(): boolean;
showBypassSystemInputProcessing(): boolean;
getAutomaticGainControl(): boolean;
getInputDeviceId(): string;
getMediaEngine(): any;
getCodecCapabilities(e: any): any;
startDavePreload(): void;
supports(e: string): boolean;
supportsDisableLocalVideo(): boolean;
supportsExperimentalSoundshare(): boolean;
supportsHookSoundshare(): boolean;
supportsInApp(appName: string): boolean;
supportsScreenSoundshare(): boolean;
supportsSystemScreensharePicker(): boolean;
supportsVideoHook(): boolean;
}

View file

@ -0,0 +1,8 @@
import { FluxStore } from "..";
export class OverridePremiumTypeStore extends FluxStore {
getCreatedAtOverride(): Date;
getPremiumTypeActual(): number;
getPremiumTypeOverride(): number;
get premiumType(): number;
}

View file

@ -1,5 +1,6 @@
import { FluxStore } from "..";
export class SpellCheckStore extends FluxStore {
hasLearnedWord(word: string): boolean;
isEnabled(): boolean;
}

View file

@ -7,5 +7,4 @@ export class UploadAttachmentStore extends FluxStore {
getUploadCount(channelId: string, draftType: DraftType): number;
getUpload(channelId: string, commandName: string, draftType: DraftType): CloudUpload;
findUpload(channelId: string, draftType: string, predicate: (upload: CloudUpload) => boolean): CloudUpload | undefined;
}

View file

@ -7,18 +7,19 @@ export * from "./FluxStore";
export * from "./GuildMemberStore";
export * from "./GuildRoleStore";
export * from "./GuildStore";
export * from "./MediaEngineStore";
export * from "./MessageStore";
export * from "./OverridePremiumTypeStore";
export * from "./PresenceStore";
export * from "./RelationshipStore";
export * from "./MediaEngineStore";
export * from "./StreamerModeStore";
export * from "./SpellCheckStore";
export * from "./SelectedChannelStore";
export * from "./SelectedGuildStore";
export * from "./SpellCheckStore";
export * from "./StickersStore";
export * from "./StreamerModeStore";
export * from "./ThemeStore";
export * from "./TypingStore";
export * from "./UploadAttachmentStore";
export * from "./UserProfileStore";
export * from "./UserStore";
export * from "./VoiceStateStore";

View file

@ -47,9 +47,6 @@ export let SelectedGuildStore: t.SelectedGuildStore;
export let ChannelStore: t.ChannelStore;
export let TypingStore: t.TypingStore;
export let RelationshipStore: t.RelationshipStore;
export let MediaEngineStore: t.MediaEngineStore;
export let SpellCheckStore: t.SpellCheckStore;
export let UploadAttachmentStore: GenericStore;
export let VoiceStateStore: t.VoiceStateStore;
export let EmojiStore: t.EmojiStore;
@ -58,7 +55,12 @@ export let ThemeStore: t.ThemeStore;
export let WindowStore: t.WindowStore;
export let DraftStore: t.DraftStore;
export let StreamerModeStore: t.StreamerModeStore;
export let OverridePremiumTypeStore: GenericStore;
export let MediaEngineStore: t.MediaEngineStore;
export let SpellCheckStore: t.SpellCheckStore;
export let UploadAttachmentStore: t.UploadAttachmentStore;
export let OverridePremiumTypeStore: t.OverridePremiumTypeStore;
/**
* @see jsdoc of {@link t.useStateFromStores}
@ -73,7 +75,6 @@ waitForStore("ChannelStore", m => ChannelStore = m);
waitForStore("SelectedChannelStore", m => SelectedChannelStore = m);
waitForStore("SelectedGuildStore", m => SelectedGuildStore = m);
waitForStore("GuildStore", m => GuildStore = m);
waitForStore("GuildRoleStore", m => GuildRoleStore = m);
waitForStore("GuildMemberStore", m => GuildMemberStore = m);
waitForStore("RelationshipStore", m => RelationshipStore = m);
waitForStore("MediaEngineStore", m => MediaEngineStore = m);