Telegram Web K with changes to work inside I2P
https://web.telegram.i2p/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
81 lines
1.9 KiB
81 lines
1.9 KiB
import { AuthSentCode } from "./layer"; |
|
import type { ApiError } from "./lib/mtproto/apiManager"; |
|
|
|
export type InvokeApiOptions = Partial<{ |
|
dcId: number, |
|
floodMaxTimeout: number, |
|
noErrorBox: true, |
|
fileUpload: true, |
|
ignoreErrors: true, |
|
fileDownload: true, |
|
createNetworker: true, |
|
singleInRequest: true, |
|
startMaxLength: number, |
|
|
|
prepareTempMessageId: string, |
|
afterMessageId: string, |
|
resultType: string, |
|
|
|
timeout: number, |
|
waitTime: number, |
|
stopTime: number, |
|
rawError: any |
|
}>; |
|
|
|
export type WorkerTaskTemplate = { |
|
type: string, |
|
id: number, |
|
payload?: any, |
|
error?: ApiError |
|
}; |
|
|
|
export type Modify<T, R> = Omit<T, keyof R> & R; |
|
|
|
//export type Parameters<T> = T extends (... args: infer T) => any ? T : never; |
|
|
|
export type ArgumentTypes<F extends Function> = F extends (...args: infer A) => any ? A : never; |
|
export type SuperReturnType<F extends Function> = F extends (...args: any) => any ? ReturnType<F> : never; |
|
|
|
export type AnyLiteral = Record<string, any>; |
|
export type AnyClass = new (...args: any[]) => any; |
|
export type AnyFunction = (...args: any) => any; |
|
export type AnyToVoidFunction = (...args: any) => void; |
|
export type NoneToVoidFunction = () => void; |
|
|
|
export type AuthState = AuthState.signIn | AuthState.authCode | AuthState.password | AuthState.signUp | AuthState.signedIn; |
|
export namespace AuthState { |
|
export type signIn = { |
|
_: 'authStateSignIn' |
|
}; |
|
|
|
export type authCode = { |
|
_: 'authStateAuthCode', |
|
sentCode: AuthSentCode.authSentCode |
|
}; |
|
|
|
export type password = { |
|
_: 'authStatePassword' |
|
}; |
|
|
|
export type signUp = { |
|
_: 'authStateSignUp', |
|
authCode: { |
|
phone_number: string, |
|
phone_code_hash: string |
|
} |
|
}; |
|
|
|
export type signedIn = { |
|
_: 'authStateSignedIn' |
|
}; |
|
} |
|
|
|
export type ConnectionStatusChange = { |
|
_: 'networkerStatus', |
|
online: boolean, |
|
dcId: number, |
|
name: string, |
|
isFileNetworker: boolean, |
|
isFileDownload: boolean, |
|
isFileUpload: boolean |
|
}; |