UNPKG

@mingoo/amotify

Version:
115 lines (114 loc) 3.71 kB
/// <reference types="react" /> import './module'; declare global { interface JsminExtension { spreadSheet: { readFromFile(file: fn.Input.Filer.CustomFile): Promise<JsminExtension.SpreadSheet.Method>; readFromJson(v: JsminExtension.SpreadSheet.Json): Promise<JsminExtension.SpreadSheet.Method>; }; } namespace JsminExtension { namespace SpreadSheet { interface Instance { fn: Method; prototype: Method; (v: any, a: string): any; } interface Method { isValid(): boolean; getWorkbook(): any; updateFileName(fileName: string): void; updateMerges(merges: Merge[][]): void; updateStyles(styles: Style[][]): void; toJson(): { fileName: string; sheets: { sheetName: string; rows: any[]; }[]; }; export(type?: 'xlsx' | 'csv'): void; } type Json = { fileName: string; sheets: SheetParams[]; }; type SheetParams = { sheetName: string; rows: RowParams[]; merges?: Merge[]; styles?: Style[]; }; type RowParams = (string | number)[]; type Merge = [string, string] | [null, null]; type Style = { type: 'cell' | 'row' | 'column'; target: string | number | (string | number)[]; values: { [key: string]: any; }; }; } } interface JsminExtension { formCollect(form: string): Promise<{ valid: boolean; data: plainObject; }>; NoticeHttpStatus(params: { status: number; statusText: string; label: ReactElement; } & fn.SnackBar.AddParams): void; copyToClipboard(data: any, notice?: boolean): Promise<{ ok: boolean; body: any; }>; getCurrentLocation: { (): Promise<JsminExtension.getCurrentLocationOutput>; }; CDNReader: { (url: string): void; }; ImageLoader: { (dataUrl: string, img?: HTMLImageElement): Promise<HTMLImageElement>; }; isJSXElement(v: any): v is JSX.Element; } namespace JsminExtension { type getCurrentLocationOutput = { ok: false; status: number; body: { reason: any; }; } | { ok: true; status: 200; body: { lat: number; lng: number; }; }; } type base64ToBlobTypeProps = 'image/png' | 'image/jpeg' | string; interface String { zen2hanNumber(): string; } } export type Device = 'windows' | 'android' | 'iPhone' | 'iPad' | 'macOSX' | 'undefined'; export type Browser = 'chrome' | 'firefox' | 'safari' | 'opera' | 'ie' | 'edge' | 'undefined'; export type ReactElement = React.ReactNode | React.ReactNode[]; import { TagProps } from './property'; export type { TagProps }; import { config, global, atoms, mols, orgs, temps, fn } from './amotify'; export type { config, global, atoms, mols, orgs, temps, fn }; export interface amotify { config: config.Methods; global: global.Methods; atoms: atoms.Methods; mols: mols.Methods; orgs: orgs.Methods; temps: temps.Methods; fn: fn.Methods; }