import type { ExtractAction, FluxAction, FluxStore } from "@vencord/discord-types"; import { findByStoreName } from "@vendetta/metro"; import type { CollectiblesItemType } from "@fpte/lib/records"; export const ProfileEffectStore: $ProfileEffectStore = findByStoreName("ProfileEffectStore"); export type ProfileEffectStoreAction = ExtractAction; declare class $ProfileEffectStore extends FluxStore { static displayName: "ProfileEffectStore"; canFetch(): boolean; get fetchError(): Error | undefined; getProfileEffectById(effectId: string): ProfileEffect | undefined; hasFetched(): boolean; get isFetching(): boolean; get profileEffects(): ProfileEffect[]; get tryItOutId(): string | null; } export interface ProfileEffect { config: ProfileEffectConfig; id: string; skuId: string; } export interface ProfileEffectConfig { accessibilityLabel: string; animationType: number; description: string; effects: { duartion: number; height: number; loop: boolean; loopDelay: number; position: { x: number; y: number; }; src: string; start: number; width: number; zIndex: number; }[]; id: string; reducedMotionSrc: string; sku_id: string; staticFrameSrc?: string; thumbnailPreviewSrc: string; title: string; type: CollectiblesItemType.PROFILE_EFFECT; }