import { BaseComponent } from 'primeng/basecomponent';
import * as i1 from 'primeng/bind';
import { Bind } from 'primeng/bind';
import * as _primeuix_styled from '@primeuix/styled';
import { BaseStyle } from 'primeng/base';
import * as i0 from '@angular/core';
import { DividerPassThrough } from 'primeng/types/divider';

/**
 *
 * Divider is used to separate contents.
 *
 * [Live Demo](https://primeng.org/divider)
 *
 * @module dividerstyle
 *
 */
declare enum DividerClasses {
    /**
     * Class name of the root element
     */
    root = "p-divider",
    /**
     * Class name of the content element
     */
    content = "p-divider-content"
}
declare class DividerStyle extends BaseStyle {
    name: string;
    style: _primeuix_styled.StyleType;
    classes: {
        root: ({ instance }: {
            instance: any;
        }) => (string | {
            'p-divider-left': boolean;
            'p-divider-center'?: undefined;
            'p-divider-right'?: undefined;
            'p-divider-top'?: undefined;
            'p-divider-bottom'?: undefined;
        } | {
            'p-divider-center': boolean;
            'p-divider-left'?: undefined;
            'p-divider-right'?: undefined;
            'p-divider-top'?: undefined;
            'p-divider-bottom'?: undefined;
        } | {
            'p-divider-right': boolean;
            'p-divider-left'?: undefined;
            'p-divider-center'?: undefined;
            'p-divider-top'?: undefined;
            'p-divider-bottom'?: undefined;
        } | {
            'p-divider-top': boolean;
            'p-divider-left'?: undefined;
            'p-divider-center'?: undefined;
            'p-divider-right'?: undefined;
            'p-divider-bottom'?: undefined;
        } | {
            'p-divider-bottom': boolean;
            'p-divider-left'?: undefined;
            'p-divider-center'?: undefined;
            'p-divider-right'?: undefined;
            'p-divider-top'?: undefined;
        })[];
        content: string;
    };
    inlineStyles: {
        root: ({ instance }: {
            instance: any;
        }) => {
            justifyContent: string | null;
            alignItems: string | null;
        };
    };
    static ɵfac: i0.ɵɵFactoryDeclaration<DividerStyle, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<DividerStyle>;
}
interface DividerStyle extends BaseStyle {
}

/**
 * Divider is used to separate contents.
 * @group Components
 */
declare class Divider extends BaseComponent<DividerPassThrough> {
    componentName: string;
    $pcDivider: Divider | undefined;
    bindDirectiveInstance: Bind;
    onAfterViewChecked(): void;
    /**
     * Style class of the component.
     * @deprecated since v20.0.0, use `class` instead.
     * @group Props
     */
    styleClass: string | undefined;
    /**
     * Specifies the orientation.
     * @group Props
     */
    layout: 'horizontal' | 'vertical' | undefined;
    /**
     * Border style type.
     * @group Props
     */
    type: 'solid' | 'dashed' | 'dotted' | undefined;
    /**
     * Alignment of the content.
     * @group Props
     */
    align: 'left' | 'center' | 'right' | 'top' | 'bottom' | undefined;
    _componentStyle: DividerStyle;
    get dataP(): string | undefined;
    static ɵfac: i0.ɵɵFactoryDeclaration<Divider, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<Divider, "p-divider", never, { "styleClass": { "alias": "styleClass"; "required": false; }; "layout": { "alias": "layout"; "required": false; }; "type": { "alias": "type"; "required": false; }; "align": { "alias": "align"; "required": false; }; }, {}, never, ["*"], true, [{ directive: typeof i1.Bind; inputs: {}; outputs: {}; }]>;
}
declare class DividerModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<DividerModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<DividerModule, never, [typeof Divider, typeof i1.BindModule], [typeof Divider, typeof i1.BindModule]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<DividerModule>;
}

export { Divider, DividerClasses, DividerModule, DividerStyle };
