UNPKG

mysterium-vpn-js

Version:
220 lines (219 loc) 12.4 kB
/** * Copyright (c) 2020 BlockDev AG * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ import { MMNApiKeyResponse, MMNReportResponse } from './mmn/mmn'; import { IntercomIssue, Issue, IssueId, SupportIssueRequest, SupportIssueResponse } from './feedback/issue'; import { Config } from './config/config'; import { AccessPolicy } from './access-policy/access-policy'; import { ConnectionCancelRequest, ConnectionRequest } from './connection/request'; import { ConnectionInfo } from './connection/status'; import { IP } from './location/ip'; import { ConnectionStatistics } from './connection/statistics'; import { Location } from './location/location'; import { NodeHealthcheck } from './daemon/healthcheck'; import { Terms, TermsRequest } from './daemon/terms'; import { HttpInterface } from './http/interface'; import { IdentityBalanceResponse, Identity, IdentityRef } from './identity/identity'; import { IdentityRegisterRequest, IdentityRegistrationResponse } from './identity/registration'; import { IdentityBeneficiaryResponse } from './identity/beneficiary'; import { NatStatusResponse } from './nat/status'; import { NodeMonitoringStatusResponse } from './node/status'; import { Proposal, ProposalQuery } from './proposal/proposal'; import { ServiceInfo } from './provider/service-info'; import { ServiceListRequest, ServiceStartRequest } from './provider/service-request'; import { SessionListQuery, SessionListResponse, SessionQuery, SessionStatsAggregatedResponse, SessionStatsDailyResponse } from './session/session'; import { ChainSummary } from './transactor/chains'; import { Fees, FeesResponse } from './transactor/fees'; import { EligibilityResponse } from './transactor/registration'; import { SettleRequest, SettleWithBeneficiaryRequest, DecreaseStakeRequest, SettlementListQuery, SettlementListResponse, BeneficiaryTxStatus } from './transactor/settlement'; import { IdentityCurrentRequest } from './identity/selection'; import { AuthRequest, AuthResponse, ChangePasswordRequest } from './auth/auth'; import { Money, PaymentAPI } from './payment'; import { ReferralTokenResponse, ReferralTokenRewardsResponse } from './referral'; import { CurrentPricesResponse, CurrentPricesV2Response } from './prices'; import { Payout } from './identity/payout'; import { FilterPresetsResponse } from './proposal/filter-preset'; import { EntertainmentEstimateQuery, EntertainmentEstimateResponse } from './payment/entertainment'; import { NatTypeResponse } from './nat/type'; import { WithdrawRequest } from './transactor/withdraw'; import { ProviderAPI } from './provider'; export declare const TEQUILAPI_URL = "http://127.0.0.1:4050"; export declare const pathConfig = "config"; export declare const pathConfigUser = "config/user"; export declare const pathConfigDefault = "config/default"; export declare const pathInvoice = "/invoice"; export interface BaseTequilapiClient { healthCheck(timeout?: number): Promise<NodeHealthcheck>; natStatus(): Promise<NatStatusResponse>; nodeMonitoringStatus(): Promise<NodeMonitoringStatusResponse>; natType(): Promise<NatTypeResponse>; stop(): Promise<void>; location(timeout?: number): Promise<Location>; terms(): Promise<Terms>; termsUpdate(request: TermsRequest): Promise<void>; config(): Promise<Config>; defaultConfig(): Promise<Config>; userConfig(): Promise<Config>; updateUserConfig(config: Config): Promise<Config>; identityList(): Promise<IdentityRef[]>; identityCurrent(request: IdentityCurrentRequest): Promise<IdentityRef>; identityCreate(passphrase: string): Promise<IdentityRef>; identityUnlock(id: string, passphrase: string, timeout?: number): Promise<void>; identityRegister(id: string, request?: IdentityRegisterRequest): Promise<void>; identity(id: string): Promise<Identity>; identityRegistration(id: string): Promise<IdentityRegistrationResponse>; identityBeneficiary(id: string): Promise<IdentityBeneficiaryResponse>; identityBalanceRefresh(id: string): Promise<IdentityBalanceResponse>; payoutAddressSave(id: string, address: string): Promise<Payout>; payoutAddressGet(id: string): Promise<Payout>; authSetToken(token: string): void; authAuthenticate(request: AuthRequest, useToken: true): Promise<AuthResponse>; authLogin(request: AuthRequest): Promise<AuthResponse>; authLogout(): Promise<void>; authChangePassword(request: ChangePasswordRequest): Promise<void>; findProposals(options?: ProposalQuery): Promise<Proposal[]>; proposalFilterPresets(): Promise<FilterPresetsResponse>; pricesCurrent(): Promise<CurrentPricesResponse>; pricesCurrentV2(): Promise<CurrentPricesV2Response[]>; reportIssueGithub(issue: Issue, timeout?: number): Promise<IssueId>; reportIssueIntercom(issue: IntercomIssue, timeout?: number): Promise<void>; reportIssueSupport(issue: SupportIssueRequest, timeout?: number): Promise<SupportIssueResponse>; connectionCreate(request: ConnectionRequest, timeout?: number): Promise<ConnectionInfo>; connectionStatus(): Promise<ConnectionInfo>; connectionCancel(request?: ConnectionCancelRequest): Promise<void>; connectionIp(timeout?: number): Promise<IP>; connectionStatistics(): Promise<ConnectionStatistics>; connectionLocation(): Promise<Location>; serviceList(request?: ServiceListRequest): Promise<ServiceInfo[]>; serviceGet(serviceId: string): Promise<ServiceInfo>; serviceStart(request: ServiceStartRequest, timeout?: number): Promise<ServiceInfo>; serviceStop(serviceId: string): Promise<void>; /** * @deprecated use ProviderAPI */ sessions(query?: SessionListQuery): Promise<SessionListResponse>; /** * @deprecated use ProviderAPI */ sessionStatsAggregated(query?: SessionQuery): Promise<SessionStatsAggregatedResponse>; /** * @deprecated use ProviderAPI */ sessionStatsDaily(query?: SessionQuery): Promise<SessionStatsDailyResponse>; accessPolicies(): Promise<AccessPolicy[]>; transactorFees(chainId?: number): Promise<Fees>; settleSync(request: SettleRequest): Promise<void>; settleAsync(request: SettleRequest): Promise<void>; settleWithBeneficiary(request: SettleWithBeneficiaryRequest): Promise<void>; settleIntoStakeSync(request: SettleRequest): Promise<void>; settleIntoStakeAsync(request: SettleRequest): Promise<void>; decreaseStake(request: DecreaseStakeRequest): Promise<void>; settlementHistory(query?: SettlementListQuery): Promise<SettlementListResponse>; beneficiaryTxStatus(id: string): Promise<BeneficiaryTxStatus>; withdraw(request: WithdrawRequest): Promise<void>; chainSummary(): Promise<ChainSummary>; freeRegistrationEligibility(id: string): Promise<EligibilityResponse>; freeProviderRegistrationEligibility(): Promise<EligibilityResponse>; getMMNNodeReport(): Promise<MMNReportResponse>; setMMNApiKey(apiKey: string): Promise<void>; getMMNApiKey(): Promise<MMNApiKeyResponse>; clearMMNApiKey(): Promise<void>; exchangeRate(quoteCurrency?: string): Promise<Money>; estimateEntertainment(query: EntertainmentEstimateQuery): Promise<EntertainmentEstimateResponse>; getReferralToken(identity: string): Promise<ReferralTokenResponse>; referralTokenRewards(token: string): Promise<ReferralTokenRewardsResponse>; validateEthRPCL2(rpcUrls: string[], timeout?: number): Promise<void>; } declare class BaseHttpTequilapiClient implements BaseTequilapiClient { http: HttpInterface; readonly payment: PaymentAPI; readonly provider: ProviderAPI; constructor(http: HttpInterface); healthCheck(timeout?: number): Promise<NodeHealthcheck>; terms(): Promise<Terms>; termsUpdate(request: TermsRequest): Promise<void>; natStatus(): Promise<NatStatusResponse>; nodeMonitoringStatus(): Promise<NodeMonitoringStatusResponse>; natType(): Promise<NatTypeResponse>; stop(): Promise<void>; location(timeout?: number): Promise<Location>; identityList(): Promise<IdentityRef[]>; identity(id: string): Promise<Identity>; identityCurrent(request: IdentityCurrentRequest): Promise<IdentityRef>; identityCreate(passphrase: string): Promise<IdentityRef>; identityUnlock(id: string, passphrase: string, timeout?: number): Promise<void>; identityRegister(id: string, request?: IdentityRegisterRequest): Promise<void>; identityRegistration(id: string): Promise<IdentityRegistrationResponse>; identityBeneficiary(id: string): Promise<IdentityBeneficiaryResponse>; identityBalanceRefresh(id: string): Promise<IdentityBalanceResponse>; payoutAddressSave(id: string, address: string): Promise<Payout>; payoutAddressGet(id: string): Promise<Payout>; authSetToken(token: string): void; authAuthenticate(request: AuthRequest, useToken?: boolean): Promise<AuthResponse>; authLogin(request: AuthRequest): Promise<AuthResponse>; authLogout(): Promise<void>; authChangePassword(request: ChangePasswordRequest): Promise<void>; findProposals(query?: ProposalQuery): Promise<Proposal[]>; proposalFilterPresets(): Promise<FilterPresetsResponse>; pricesCurrent(): Promise<CurrentPricesResponse>; pricesCurrentV2(): Promise<CurrentPricesV2Response[]>; connectionCreate(request: ConnectionRequest, timeout?: number | undefined): Promise<ConnectionInfo>; connectionStatus(): Promise<ConnectionInfo>; connectionCancel(request?: ConnectionCancelRequest): Promise<void>; connectionIp(timeout?: number): Promise<IP>; connectionLocation(): Promise<Location>; connectionStatistics(): Promise<ConnectionStatistics>; serviceList(request?: ServiceListRequest): Promise<ServiceInfo[]>; serviceGet(id: string): Promise<ServiceInfo>; serviceStart(request: ServiceStartRequest, timeout?: number | undefined): Promise<ServiceInfo>; serviceStop(serviceId: string): Promise<void>; sessions(query?: SessionListQuery): Promise<SessionListResponse>; /** * @deprecated use ProviderAPI */ sessionStatsAggregated(query?: SessionQuery): Promise<SessionStatsAggregatedResponse>; /** * @deprecated use ProviderAPI */ sessionStatsDaily(query?: SessionQuery): Promise<SessionStatsDailyResponse>; accessPolicies(): Promise<AccessPolicy[]>; config(): Promise<Config>; defaultConfig(): Promise<Config>; userConfig(): Promise<Config>; updateUserConfig(config: Config): Promise<Config>; reportIssueGithub(issue: Issue, timeout?: number): Promise<IssueId>; /** * @deprecated use reportIssueSupport */ reportIssueIntercom(issue: IntercomIssue, timeout?: number): Promise<void>; reportIssueSupport(issue: SupportIssueRequest, timeout?: number): Promise<SupportIssueResponse>; transactorFees(chainId?: number): Promise<Fees>; transactorFeesV2(chainId?: number): Promise<FeesResponse>; settleSync(request: SettleRequest): Promise<void>; settleAsync(request: SettleRequest): Promise<void>; settleWithBeneficiary(request: SettleWithBeneficiaryRequest): Promise<void>; beneficiaryTxStatus(id: string): Promise<BeneficiaryTxStatus>; chainSummary(): Promise<ChainSummary>; freeRegistrationEligibility(id: string): Promise<EligibilityResponse>; freeProviderRegistrationEligibility(): Promise<EligibilityResponse>; withdraw(request: WithdrawRequest): Promise<void>; settleIntoStakeSync(request: SettleRequest): Promise<void>; settleIntoStakeAsync(request: SettleRequest): Promise<void>; decreaseStake(request: DecreaseStakeRequest): Promise<void>; settlementHistory(query?: SettlementListQuery): Promise<SettlementListResponse>; getMMNNodeReport(): Promise<MMNReportResponse>; setMMNApiKey(apiKey: string): Promise<void>; getMMNApiKey(): Promise<MMNApiKeyResponse>; clearMMNApiKey(): Promise<void>; getReferralToken(identity: string): Promise<ReferralTokenResponse>; exchangeRate(quoteCurrency?: string): Promise<Money>; validateEthRPCL2(rpcUrls: string[], timeout?: number): Promise<void>; estimateEntertainment(query: EntertainmentEstimateQuery): Promise<EntertainmentEstimateResponse>; referralTokenRewards(token: string): Promise<ReferralTokenRewardsResponse>; } export declare class TequilapiClient extends BaseHttpTequilapiClient { } export {};