87 lines
2.7 KiB
TypeScript
87 lines
2.7 KiB
TypeScript
// just for develop
|
|
|
|
export default {
|
|
new: new_,
|
|
newH2C,
|
|
get,
|
|
head,
|
|
post,
|
|
put,
|
|
delete: delete_,
|
|
do: do_,
|
|
upload,
|
|
download,
|
|
connect
|
|
}
|
|
|
|
function new_(config?: Config): Client { return null as any }
|
|
function newH2C(config?: Config): Client { return null as any }
|
|
function get(url: string, headers?: Object): Result { return null as any }
|
|
function head(url: string, headers?: Object): Result { return null as any }
|
|
function post(url: string, data: any, headers?: Object): Result { return null as any }
|
|
function put(url: string, data: any, headers?: Object): Result { return null as any }
|
|
function delete_(url: string, data: any, headers?: Object): Result { return null as any }
|
|
function do_(method: string, url: string, data: any, callback?: (data: string) => void, headers?: Object): Result { return null as any }
|
|
function upload(url: string, form: Object, files: Object, headers?: Object): Result { return null as any }
|
|
function download(filename: string, url: string, callback?: (finished: number, total: number) => void, headers?: Object): Result { return null as any }
|
|
function connect(url: string, config?: WSConfig): WS { return null as any }
|
|
|
|
interface Client {
|
|
get(url: string, headers?: Object): Result
|
|
head(url: string, headers?: Object): Result
|
|
post(url: string, data: any, headers?: Object): Result
|
|
put(url: string, data: any, headers?: Object): Result
|
|
delete(url: string, data: any, headers?: Object): Result
|
|
do(method: string, url: string, data: any, callback?: (data: string) => void, headers?: Object): Result
|
|
upload(url: string, form: Object, files: Object, headers?: Object): Result
|
|
download(filename: string, url: string, callback?: (finished: number, total: number) => void, headers?: Object): Result
|
|
}
|
|
|
|
interface Result {
|
|
status: string
|
|
statusCode: number
|
|
headers: Object
|
|
bytes(): Uint8Array
|
|
string(): string
|
|
object(): Object
|
|
}
|
|
|
|
interface Config {
|
|
timeout: number
|
|
baseURL: string
|
|
globalHeaders: Map<string, string>
|
|
downloadPartSize: number
|
|
redirect: boolean
|
|
}
|
|
|
|
interface WSConfig {
|
|
headers: Object
|
|
compress: boolean
|
|
onOpen: () => void
|
|
onClose: (code: number, data: string) => void
|
|
onMessage: (type: string, data: any) => void
|
|
pingInterval: number
|
|
reconnectInterval: number
|
|
}
|
|
|
|
interface WS {
|
|
read: () => WSMessage
|
|
write(data: any): void
|
|
writeMessage(type: string, data: any): void
|
|
ping: () => void
|
|
pingCount: () => PingCount
|
|
close(): void
|
|
}
|
|
|
|
interface PingCount {
|
|
pingTimes: number
|
|
pongTimes: number
|
|
lastPingTime: number
|
|
lastPongTime: number
|
|
}
|
|
|
|
interface WSMessage {
|
|
type: string
|
|
data: string | Object
|
|
}
|