import type { PublishOption } from './types'; export declare const notLoginEnum = "Not Login"; export default class SurgeClient { constructor({ proxy, onError, }: { proxy: string; onError?: (err: Error) => void; }); proxy: string; onError?: (err: Error) => void; services: { login: ({ user, password, }: { user: string; password: string; }) => Promise<{ email: string; token: string; }>; whoami: () => Promise<{ email: string; id: string; uuid: string; role: number; plan: Object; card: Object; }>; list: () => Promise<{ [key: string]: string | number; domain: string; planName: string; email: string; ip: string; preview: string; timeAgoInWords: string; rev: number; uploadStartTime: number; uploadEndTime: number; uploadDuration: number; publicFileCount: number; publicTotalSize: number; privateFileCount: number; privateTotalSize: number; }[]>; teardown: (domain: string) => Promise<{ msg: string; nsDomain: string; instances: { type: string; domain: string; location: string; status: string; statusColor: string; ip: string; info: string; }[]; }>; }; get token(): string; login({ user, password }: { user: string; password: string; }): Promise; whoami(): Promise<{ email: string; id: string; uuid: string; role: number; plan: Object; card: Object; }>; logout(): Promise; publish({ files, domain, onProgress, onTick }: PublishOption): Promise; list(): Promise<{ [key: string]: string | number; domain: string; planName: string; email: string; ip: string; preview: string; timeAgoInWords: string; rev: number; uploadStartTime: number; uploadEndTime: number; uploadDuration: number; publicFileCount: number; publicTotalSize: number; privateFileCount: number; privateTotalSize: number; }[]>; teardown(domain: string): Promise<{ msg: string; nsDomain: string; instances: { type: string; domain: string; location: string; status: string; statusColor: string; ip: string; info: string; }[]; }>; }