blob: c32462af3774ab0f95d116237c5c843b151871c4 [file] [log] [blame]
/**
* @license
* Copyright Google LLC All Rights Reserved.
*
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://angular.io/license
*/
import { ElementRef } from '@angular/core';
import { BaseDirective2, StyleBuilder, StyleDefinition, StyleUtils, MediaMarshaller, ElementMatcher } from '@angular/flex-layout/core';
export interface LayoutAlignParent {
layout: string;
inline: boolean;
}
export declare class LayoutAlignStyleBuilder extends StyleBuilder {
buildStyles(align: string, parent: LayoutAlignParent): StyleDefinition;
}
/**
* 'layout-align' flexbox styling directive
* Defines positioning of child elements along main and cross axis in a layout container
* Optional values: {main-axis} values or {main-axis cross-axis} value pairs
*
* @see https://css-tricks.com/almanac/properties/j/justify-content/
* @see https://css-tricks.com/almanac/properties/a/align-items/
* @see https://css-tricks.com/almanac/properties/a/align-content/
*/
export declare class LayoutAlignDirective extends BaseDirective2 {
protected elRef: ElementRef;
protected styleUtils: StyleUtils;
protected styleBuilder: LayoutAlignStyleBuilder;
protected marshal: MediaMarshaller;
protected DIRECTIVE_KEY: string;
protected layout: string;
protected inline: boolean;
constructor(elRef: ElementRef, styleUtils: StyleUtils, styleBuilder: LayoutAlignStyleBuilder, marshal: MediaMarshaller);
/**
*
*/
protected updateWithValue(value: string): void;
/**
* Cache the parent container 'flex-direction' and update the 'flex' styles
*/
protected onLayoutChange(matcher: ElementMatcher): void;
}
export declare class DefaultLayoutAlignDirective extends LayoutAlignDirective {
protected inputs: string[];
}