import { Account, AccountProvider } from './account-protocol'; import { ClientOptions, ClientOptionsProvider } from './client-protocol'; import { Credentials, CredentialsProvider } from './credentials-protocol'; import { RegionProvider } from './region-protocol'; export interface CloudService { name: string; getRawCloudService(): Promise; setRawCloudService(innerService: T): void; } export interface RawCloudService { } export declare abstract class AbstractCloudService implements CloudService { name: string; protected readonly regionProvider: RegionProvider; protected readonly credentialsProvider: CredentialsProvider; protected readonly accountProvider: AccountProvider; protected readonly clientOptionsProvider: ClientOptionsProvider; protected _rawCloudService: T; getRawCloudService(): Promise; setRawCloudService(rawCloudService: T): void; protected abstract doCreateRawCloudService(credentials: Credentials, region: string, clientOptions: ClientOptions, account?: Account): Promise; } //# sourceMappingURL=cloud-protocol.d.ts.map