carbon-components-angular
Version:
Next generation components
67 lines (63 loc) • 2.69 kB
TypeScript
/**
*
* carbon-angular v0.0.0 | base-modal.service.d.ts
*
* Copyright 2014, 2025 IBM
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { ComponentRef, EnvironmentInjector } from "@angular/core";
import { PlaceholderService } from "carbon-components-angular/placeholder";
import * as i0 from "@angular/core";
/**
* Modal service handles instantiating and destroying modal instances.
* Uses PlaceholderService to track open instances, and for it's placeholder view reference.
*/
export declare class BaseModalService {
placeholderService: PlaceholderService;
protected static modalList: Array<ComponentRef<any>>;
/**
* Current module/component injection enviornment
* Allows modules to use providers from calling component
*
* Root Module/
* └── Lazy loaded Feature Module/
* ├── Provides Service & imports modules
* ├── Modal component (component that extends base component)
* └── Modal component launcher (dynamically creates modal component)
*
* Passing EnvironmentInjector in `createComponent` will look for provider declaration in feature
* module instead of root module. This is required to pass correct context in a lazy-loaded applications.
* Services injected in root, will also be available as feature module enviornment will also hierarchically inherit
* the root services.
*/
protected environment: EnvironmentInjector;
/**
* Creates an instance of `ModalService`.
*/
constructor(placeholderService: PlaceholderService);
/**
* Creates and renders the modal component that is passed in.
* `inputs` is an optional parameter of `data` that can be passed to the `Modal` component.
*/
create<T>(data: {
component: any;
inputs?: any;
}): ComponentRef<any>;
/**
* Destroys the modal on the supplied index.
* When called without parameters it destroys the most recently created/top most modal.
*/
destroy(index?: number): void;
static ɵfac: i0.ɵɵFactoryDeclaration<BaseModalService, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<BaseModalService>;
}