import { Context, Dict } from 'koishi'; import { ImageData } from './types'; import { Config } from './config'; export declare function project(object: {}, mapping: {}): {}; export interface Size { width: number; height: number; } export declare function getImageSize(buffer: ArrayBuffer): Size; export declare function download(ctx: Context, url: string, headers?: {}): Promise; export declare function calcAccessKey(email: string, password: string): Promise; export declare function calcEncryptionKey(email: string, password: string): Promise; export declare class NetworkError extends Error { params: {}; constructor(message: string, params?: {}); static catch: (mapping: Dict) => (e: any) => never; } export declare function login(ctx: Context): Promise; export declare function closestMultiple(num: number, mult?: number): number; export interface Size { width: number; height: number; /** Indicate whether this resolution is pre-defined or customized */ custom?: boolean; } export declare function resizeInput(size: Size): Size; export declare function forceDataPrefix(url: string, mime?: string): string; export declare function submitImageTo(dataOrUrl: string, config: Config): Promise;