UNPKG

@omnia/tooling-composers

Version:

Provide tooling to work with manifest things.

41 lines (40 loc) 2.49 kB
import { BuildOptions, ServiceOptions, RoleBasedSecurityProviderOptions, CombinedSecurityProviderOptions } from './models'; import { ICombinableSecurityProviderComposer, SecurityProviderCombinableRuleComposer } from './CombinableSecurityProviderComposer'; import { IServiceManifestComposer, ServiceManifestComposer } from './ServiceManifestComposer'; import { IClientServiceConfigurator } from './ConfigurationClientServiceRegistry'; export interface IWebAppServiceComposer extends IServiceManifestComposer<IWebAppServiceComposer> { /** * Set options to build process * @param options the options for defining the build with options. */ withBuildOptions: (options: BuildOptions) => IWebAppServiceComposer; /** * Add a security provider for this omnia service * This security provider is connected to the security roles concept in omnia. * @param options the options for defining a role based security provider. */ AddRoleBasedSecurityProvider: (options: RoleBasedSecurityProviderOptions) => IWebAppServiceComposer; /** * Add a security provider for this omnia service * This security provider is a combination of other security providers. * * Using this Security provider would mean avaluating the logical combination of access to other security providers * * @param options the options for defining a combined security provider. */ AddCombinedSecurityProvider: (options: CombinedSecurityProviderOptions) => ICombinableSecurityProviderComposer<IWebAppServiceComposer>; /** * Add a configuration to enable features at the runtimes. * @param configurationType the type for defining a configuration. */ configuration: <T extends IClientServiceConfigurator<IWebAppServiceComposer>>(configurationType: any) => T; } export declare class WebAppServiceComposer extends ServiceManifestComposer<WebAppServiceComposer> implements IWebAppServiceComposer { private manifestId; private manifestTitle; constructor(manifestId: string, manifestTitle: string, serviceOptions: ServiceOptions); configuration: <T extends IClientServiceConfigurator<IWebAppServiceComposer>>(configurationType: any) => T; withBuildOptions: (options: BuildOptions) => this; AddRoleBasedSecurityProvider: (options: RoleBasedSecurityProviderOptions) => this; AddCombinedSecurityProvider: (options: CombinedSecurityProviderOptions) => SecurityProviderCombinableRuleComposer<IWebAppServiceComposer>; }