import { ElementRef, TemplateRef } from '@angular/core';
import { TsStyleThemeTypes } from '@terminus/ui/utilities';
/**
* Define the allowed aspect ratios. Used in {@link TsCardComponent}
*/
export declare type TsAspectRatioTypes = '16:9' | '4:3' | '3:2' | '5:4' | '1:1';
/**
* Define allowed border sides. Used in {@link TsCardComponent}. Border color determined by the theme.
*/
export declare type TsCardBorderOptions = 'none' | 'left' | 'right' | 'top' | 'bottom';
/**
* A presentational component to render a card
*
* @example
* Here is my card!
*
* https://getterminus.github.io/ui-demos-release/components/card
*/
export declare class TsCardComponent {
/**
* Define the default component ID
*/
protected uid: string;
/**
* Expose the aspect ratio as a percentage
*/
aspectRatioPadding: string;
/**
* Define if the card should conform to a fixed aspect ratio
*
* @param value - The aspect ratio. See {@link TsAspectRatioTypes} for possible values.
*/
set aspectRatio(value: TsAspectRatioTypes);
/**
* Define if a border should be present on the card. {@link TsCardBorderOptions}
*
* @param value
*/
set border(value: TsCardBorderOptions);
get border(): TsCardBorderOptions;
private _border;
/**
* Define if the card should center child content
*/
centeredContent: boolean;
/**
* Define if the card is disabled
*/
isDisabled: boolean;
/**
* Define if the card should not have a drop shadow
*/
flat: boolean;
/**
* Define an ID for the component
*
* @param value
*/
set id(value: string);
get id(): string;
protected _id: string;
/**
* Define if the card should support interaction (via hover)
*
* NOTE: This only alters style; not functionality
*/
supportsInteraction: boolean;
/**
* Define the card theme
*
* @param value
*/
set theme(value: TsStyleThemeTypes);
get theme(): TsStyleThemeTypes;
private _theme;
/**
* Allow a custom utility menu to be added
*/
utilityMenuTemplate: TemplateRef | undefined;
/**
* Getter to return a border class if the border is set
*/
get borderClass(): string;
}