Repository URL to install this package:
|
Version:
3.12.2 ▾
|
declare module '@filerobot/utils/lib/Translator' {
namespace Translator {
export interface Locale {
strings?: {
[key: string]: string | { [plural: number]: string }
}
pluralize?: (n: number) => number
}
}
class Translator {
constructor (opts: Translator.Locale | Translator.Locale[])
}
export = Translator
}
declare module '@filerobot/utils/lib/EventTracker' {
namespace EventTracker {
export type EventHandler = (...args: any[]) => void
export interface Emitter {
on: (event: string, handler: EventHandler) => void
off: (event: string, handler: EventHandler) => void
}
}
class EventTracker {
constructor (emitter: EventTracker.Emitter)
on (event: string, handler: EventTracker.EventHandler): void
remove (): void
}
export = EventTracker
}
declare module '@filerobot/utils/lib/ProgressTimeout' {
class ProgressTimeout {
constructor (timeout: number, timeoutHandler: () => void)
progress (): void
done (): void
}
export = ProgressTimeout
}
declare module '@filerobot/utils/lib/RateLimitedQueue' {
namespace RateLimitedQueue {
export type AbortFunction = () => void
export type PromiseFunction = (...args: any[]) => Promise<any>
export type QueueEntry = {
abort: () => void,
done: () => void,
}
export type QueueOptions = {
priority?: number
}
}
class RateLimitedQueue {
constructor(limit: number)
run(
fn: () => RateLimitedQueue.AbortFunction,
queueOptions?: RateLimitedQueue.QueueOptions
): RateLimitedQueue.QueueEntry
wrapPromiseFunction(
fn: () => RateLimitedQueue.PromiseFunction,
queueOptions?: RateLimitedQueue.QueueOptions
): RateLimitedQueue.PromiseFunction
}
export = RateLimitedQueue
}
declare module '@filerobot/utils/lib/canvasToBlob' {
function canvasToBlob (
canvas: HTMLCanvasElement,
type: string,
quality?: number
): Promise<Blob>
export = canvasToBlob
}
declare module '@filerobot/utils/lib/dataURItoBlob' {
function dataURItoBlob (
dataURI: string,
opts: { mimeType?: string; name?: string }
): Blob
export = dataURItoBlob
}
declare module '@filerobot/utils/lib/dataURItoFile' {
function dataURItoFile (
dataURI: string,
opts: { mimeType?: string; name?: string }
): File
export = dataURItoFile
}
declare module '@filerobot/utils/lib/emitSocketProgress' {
import FilerobotUtils = require('@filerobot/utils')
interface ProgressData {
progress: number
bytesFinished: number
bytesTotal: number
}
function emitSocketProgress (
filerobot: object,
progressData: ProgressData,
file: FilerobotUtils.FilerobotFile
): void
export = emitSocketProgress
}
declare module '@filerobot/utils/lib/findAllDOMElements' {
function findAllDOMElements (element: string | HTMLElement): HTMLElement[]
export = findAllDOMElements
}
declare module '@filerobot/utils/lib/findDOMElement' {
function findDOMElement (element: string | HTMLElement): HTMLElement | null
export = findDOMElement
}
declare module '@filerobot/utils/lib/generateFileId' {
import FilerobotUtils = require('@filerobot/utils')
function generateFileId (file: FilerobotUtils.FilerobotFile): string
export = generateFileId
}
declare module '@filerobot/utils/lib/getBytesRemaining' {
function getBytesRemaining (files): number
export = getBytesRemaining
}
declare module '@filerobot/utils/lib/getETA' {
function getETA (progress: object): number
export = getETA
}
declare module '@filerobot/utils/lib/getFileNameAndExtension' {
function getFileNameAndExtension(
filename: string
): { name: string, extension: string | undefined }
export = getFileNameAndExtension
}
declare module '@filerobot/utils/lib/getFileType' {
import FilerobotUtils = require('@filerobot/utils')
function getFileType (file: FilerobotUtils.FilerobotFile): string | null
export = getFileType
}
declare module '@filerobot/utils/lib/getFileTypeExtension' {
function getFileTypeExtension (mime: string): string
export = getFileTypeExtension
}
declare module '@filerobot/utils/lib/getSocketHost' {
function getSocketHost (url: string): string
export = getSocketHost
}
declare module '@filerobot/utils/lib/getSpeed' {
function getSpeed (progress: {
bytesTotal: number
bytesFinished: number
}): number
export = getSpeed
}
declare module '@filerobot/utils/lib/getTimeStamp' {
function getTimeStamp (): string
export = getTimeStamp
}
declare module '@filerobot/utils/lib/isDOMElement' {
function isDOMElement (element: any): boolean
export = isDOMElement
}
declare module '@filerobot/utils/lib/isObjectURL' {
function isObjectURL (url: string): boolean
export = isObjectURL
}
declare module '@filerobot/utils/lib/isDragDropSupported' {
function isDragDropSupported (): boolean
export = isDragDropSupported
}
declare module '@filerobot/utils/lib/isPreviewSupported' {
function isPreviewSupported (mime: string): boolean
export = isPreviewSupported
}
declare module '@filerobot/utils/lib/isTouchDevice' {
function isTouchDevice (): boolean
export = isTouchDevice
}
declare module '@filerobot/utils/lib/prettyETA' {
function prettyETA (seconds: number): string
export = prettyETA
}
declare module '@filerobot/utils/lib/secondsToTime' {
function secondsToTime (seconds: number): string
export = secondsToTime
}
declare module '@filerobot/utils/lib/settle' {
function settle<T> (
promises: Promise<T>[]
): Promise<{ successful: T[]; failed: any[] }>
export = settle
}
declare module '@filerobot/utils/lib/toArray' {
function toArray (list: any): any[]
export = toArray
}
declare module '@filerobot/utils/lib/getDroppedFiles' {
function getDroppedFiles (
dataTransfer: DataTransfer,
options?: object
): Promise<File[]>
export = getDroppedFiles
}
declare module '@filerobot/utils' {
interface IndexedObject<T> {
[key: string]: T
[key: number]: T
}
export type InternalMetadata = { name: string; type?: string }
export interface FilerobotFile<
TMeta = IndexedObject<any>,
TBody = IndexedObject<any>
> {
data: Blob | File
extension: string
id: string
isRemote: boolean
meta: InternalMetadata & TMeta
name: string
preview?: string
progress?: {
activity: string
startedAt: number | null
percentage: number
bytesFinished: number
bytesTotal: number
status: string
}
remote?: {
host: string
url: string
body?: object
}
size: number
source?: string
type?: string
response?: {
body: TBody
status: number
uploadURL: string | undefined
}
}
export interface Store {
getState (): object
setState (patch: object): void
subscribe (listener: any): () => void
}
}