import { QueryList, AfterContentInit } from '@angular/core';
import { CardCellComponent } from './components/card-cell/card-cell.component';
import * as i0 from "@angular/core";
/**
 * Card types that define the visual style of the card
 */
export type CardType = 'plain' | 'ambient';
/**
 * Serves as a container for card-styled UI elements, providing context for its child components.
 * It supports different visual styles and can encapsulate various content types.
 */
export declare class CardComponent implements AfterContentInit {
    /**
     * Defines the visual style of the card, influencing background, shadow, and border.
     */
    type: import("@angular/core").InputSignal<CardType>;
    /**
     * Defines the border radius of the card. Default is 24px.
     */
    borderRadius: import("@angular/core").InputSignal<string>;
    /**
     * URL of the image to display at the top of the card
     */
    image: import("@angular/core").InputSignal<string | undefined>;
    /**
     * Alt text for the image
     */
    imageAlt: import("@angular/core").InputSignal<string>;
    /**
     * Height of the image block
     */
    imageHeight: import("@angular/core").InputSignal<string>;
    /** Get all child cells */
    cardCells: QueryList<CardCellComponent>;
    private elementRef;
    /**
     * Custom style for card wrapper
     */
    customStyle: import("@angular/core").Signal<{
        'border-radius': string;
    }>;
    /**
     * Styles for the image block
     */
    imageStyle: import("@angular/core").Signal<{
        height?: undefined;
        'background-image'?: undefined;
        'background-size'?: undefined;
        'background-position'?: undefined;
        'border-top-left-radius'?: undefined;
        'border-top-right-radius'?: undefined;
        overflow?: undefined;
    } | {
        height: string;
        'background-image': string;
        'background-size': string;
        'background-position': string;
        'border-top-left-radius': string;
        'border-top-right-radius': string;
        overflow: string;
    }>;
    /**
     * Checks if the card has an image
     */
    hasImage: import("@angular/core").Signal<boolean>;
    constructor();
    ngAfterContentInit(): void;
    /** Apply appropriate class based on the type */
    get className(): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<CardComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<CardComponent, "tgui-card", ["tguiCard"], { "type": { "alias": "type"; "required": false; "isSignal": true; }; "borderRadius": { "alias": "borderRadius"; "required": false; "isSignal": true; }; "image": { "alias": "image"; "required": false; "isSignal": true; }; "imageAlt": { "alias": "imageAlt"; "required": false; "isSignal": true; }; "imageHeight": { "alias": "imageHeight"; "required": false; "isSignal": true; }; }, {}, ["cardCells"], ["*"], true, never>;
}
