/**
 *
 * carbon-angular v0.0.0 | theme.directive.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 { AfterContentChecked, QueryList } from "@angular/core";
import { LayerDirective } from "carbon-components-angular/layer";
import * as i0 from "@angular/core";
export declare type ThemeType = "white" | "g10" | "g90" | "g100";
/**
 * Applies theme styles to the div container it is applied to. Get started with importing the module:
 *
 * ```typescript
 * import { ThemeModule } from 'carbon-components-angular';
 * ```
 *
 * [See demo](../../?path=/story/components-theme--basic)
 */
export declare class ThemeDirective implements AfterContentChecked {
    /**
     * @deprecated as of v5 - Use `cdsTheme` input property instead
     */
    set ibmTheme(type: ThemeType | "");
    /**
     * Sets the theme for the content
     * Accepts `ThemeType` or nothing (empty string which is equivalent to "white")
     * Empty string has been added as an option for Angular 16+ to resolve type errors
     */
    cdsTheme: ThemeType | "";
    layerChildren: QueryList<LayerDirective>;
    /**
     * Using host bindings with classes to ensure we do not
     * overwrite user added classes
     */
    get whiteThemeClass(): boolean;
    get g10ThemeClass(): boolean;
    get g90ThemeClass(): boolean;
    get g100ThemeClass(): boolean;
    layerClass: boolean;
    ngAfterContentChecked(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ThemeDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<ThemeDirective, "[cdsTheme], [ibmTheme]", ["theme"], { "ibmTheme": "ibmTheme"; "cdsTheme": "cdsTheme"; }, {}, ["layerChildren"], never, false>;
}
