import { HttpClient, ILogger } from "@certd/basic"; import { CertInfo } from "@certd/plugin-lib"; export type SynologyAccessType = { username: string; password: string; otp?: string; deviceId?: string; timeout?: number; baseUrl?: string; version?: string; }; export type SynologyAccessToken = { sid: string; did?: string; synotoken: string; }; export type SynologyRequest = { method?: string; apiParams: { api: string; version: number; method: string; }; params?: any; data?: any; form?: any; headers?: any; useSynoToken?: boolean; }; export declare class SynologyClient { access: SynologyAccessType; http: HttpClient; logger: ILogger; skipSslVerify: boolean; token: SynologyAccessToken; constructor(access: SynologyAccessType, http: HttpClient, logger: ILogger, skipSslVerify: boolean); doLogin(): Promise; doLoginWithOTPCode(otpCode: string): Promise; private getLoginUrl; doLoginWithDeviceId(device_id: string): Promise; doRequest(req: SynologyRequest): Promise; getCertList(): Promise; getInfo(): Promise; updateCertToPanel(certItem: any, cert: CertInfo): Promise; }