import { SqlResourceOption, SqlElasticPoolResourceOption, PersistentDiskResourceOption } from './models/index'; import { AzureAdAppPermissionOption } from './AzureAdAppPermissionHelper'; export interface IServiceManifestComposer { /** * Request an Sql Db when the service is instantiated * A connection string to a Sql db will be injected upon instantiation. */ requestSqlDatabase: (options: SqlResourceOption) => T; /** * Request an Sql Db using shared Elastic Pool when the service is instantiated * A connection string to a Sql db will be injected upon instantiation. */ requestSqlElasticPoolDatabase: (options: SqlElasticPoolResourceOption) => T; /** * Request a Persistent Disk for storing files */ requestPersistentDisk: (options: PersistentDiskResourceOption) => T; /** * Require an Azure Ad App permissions */ requireAzureAdAppPermissions: (options: AzureAdAppPermissionOption) => T; /** * This service is not deployed by default. It is able to be deployed via an extension feature activation * */ isOnTheFlyService: () => T; } export declare class ServiceManifestComposer implements IServiceManifestComposer { private getInitInstance; constructor(getInitInstance: (() => T)); requestSqlDatabase: (options: SqlResourceOption) => T; requestSqlElasticPoolDatabase: (options: SqlElasticPoolResourceOption) => T; requestPersistentDisk: (options: PersistentDiskResourceOption) => T; requireAzureAdAppPermissions(options: AzureAdAppPermissionOption): T; isOnTheFlyService(): T; }