UNPKG

discord-user-card

Version:

Display Discord users' profile cards just like in Discord.

86 lines (85 loc) 3.39 kB
import { DiscordUserCardActivityCompeting, DiscordUserCardActivityHang, DiscordUserCardActivityListening, DiscordUserCardActivityPlaying, DiscordUserCardActivityStreaming, DiscordUserCardActivityWatching } from '@discord-user-card/core'; import { Renderer } from '../../../functions/Renderer.js'; export interface Activity { activity: DiscordUserCardActivityPlaying | DiscordUserCardActivityStreaming | DiscordUserCardActivityListening | DiscordUserCardActivityWatching | DiscordUserCardActivityCompeting | DiscordUserCardActivityHang; title: string; line1: string | undefined; line2: string | undefined; line3: string | undefined; } export declare function mapActivity(activity: DiscordUserCardActivityPlaying | DiscordUserCardActivityStreaming | DiscordUserCardActivityListening | DiscordUserCardActivityWatching | DiscordUserCardActivityCompeting | DiscordUserCardActivityHang): Activity | undefined; export declare class ActivityContentRenderer implements Renderer<Activity> { readonly parent: Element; elements: { imageContainer: HTMLDivElement; largeImage: HTMLImageElement; smallImage: HTMLImageElement; details: HTMLDivElement; line1: HTMLDivElement; line2: HTMLDivElement; line3: HTMLDivElement; }; children: { elapsedLeftLine: ElapsedLeftLineRenderer; }; lastProps: Activity | null; rerender(): void; listenersBound: boolean; boundRerender: () => void; prefersReducedMotion: MediaQueryList; constructor(parent: Element); private setAttributes; render(props: Activity): Promise<void>; renderSkeleton(props: Activity): void; setLargeImage({ activity }: Activity): Promise<boolean>; setSmallImage({ activity }: Activity): boolean; hasLargeImage({ activity }: Activity): boolean; hasSmallImage({ activity }: Activity): boolean; getAppIcon(applicationId: string): Promise<string | undefined>; getAsset(asset: string, relatedId?: string): string; destroy(): void; } declare class ElapsedLeftLineRenderer implements Renderer<Activity> { readonly parent: Element; elements: { line: HTMLDivElement; }; timeout: NodeJS.Timeout | null; constructor(parent: Element); render(props: Activity): Promise<void>; renderSkeleton(props: Activity): void; destroy(): void; } export declare class TimebarRenderer implements Renderer<Activity> { readonly parent: Element; elements: { container: HTMLDivElement; timebar: HTMLDivElement; fill: HTMLDivElement; time: HTMLDivElement; timeLeft: HTMLDivElement; timeRight: HTMLDivElement; }; timeout: NodeJS.Timeout | null; constructor(parent: Element); render(props: Activity): Promise<void>; renderSkeleton(props: Activity): void; destroy(): void; } export declare class ButtonsRenderer implements Renderer<Activity> { readonly parent: Element; elements: { buttons: HTMLDivElement; one: HTMLAnchorElement; oneLabel: HTMLDivElement; two: HTMLAnchorElement; twoLabel: HTMLDivElement; }; constructor(parent: Element); private setAttributes; render({ activity }: Activity): Promise<void>; renderSkeleton({ activity }: Activity): void; destroy(): void; } export {}; //# sourceMappingURL=activities.d.ts.map