UNPKG

decentraland-ui

Version:

Decentraland's UI components and styles

65 lines (64 loc) 2.14 kB
import * as React from 'react'; import { IPreviewController } from '@dcl/schemas/dist/dapps/preview'; import './EmoteControls.css'; export declare type EmoteControlsProps = { wearablePreviewId: string; className?: string; hideFrameInput?: boolean; hideProgressInput?: boolean; hidePlayButton?: boolean; hideSoundButton?: boolean; wearablePreviewController?: IPreviewController; renderPlayButton?: (props: { isPlaying: boolean; onPlay: () => Promise<void>; onPause: () => Promise<void>; onToggle: () => Promise<void>; }) => React.ReactNode; renderSoundButton?: (props: { isSoundEnabled: boolean; hasSound: boolean; onToggle: () => void; }) => React.ReactNode; renderProgressBar?: (props: { frame: number; length: number; onChange: (value: number) => Promise<void>; onMouseUp: () => Promise<void>; }) => React.ReactNode; renderFrameInput?: (props: { frame: number; onChange: (value: number) => Promise<void>; }) => React.ReactNode; }; declare type EmoteControlsState = { frame: number; isPlaying: boolean; playingIntervalId?: number; length?: number; isSoundEnabled: boolean; hasSound: boolean; shouldResumePlaying: boolean; isChangingFrame: boolean; }; export declare class EmoteControls extends React.PureComponent<EmoteControlsProps, EmoteControlsState> { previewController: IPreviewController | undefined; state: EmoteControlsState; handleAnimationLoop: () => void; handleAnimationEnd: () => void; handleAnimationPause: () => void; handleAnimationPlay: () => Promise<void>; handleAnimationPlaying: ({ length }: { length: any; }) => void; componentDidMount(): void; handlePlay: () => Promise<void>; handlePause: () => Promise<void>; handlePlayPause: () => Promise<void>; handleSoundToggle: () => void; handleFrameChange: (value: number) => Promise<void>; handleMouseUp: () => Promise<void>; componentDidUpdate(): Promise<void>; render(): JSX.Element; } export {};