import { Direction } from '@angular/cdk/bidi';
import * as i0 from '@angular/core';
import { OnChanges, OnInit, TemplateRef, SimpleChanges } from '@angular/core';
import { NzConfigService, NzConfigKey } from 'ng-zorro-antd/core/config';
import { NzNoAnimationDirective } from 'ng-zorro-antd/core/no-animation';
import { NzSafeAny, NzSizeDSType } from 'ng-zorro-antd/core/types';

/**
 * Use of this source code is governed by an MIT-style license that can be
 * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
 */
type NzBadgeStatusType = 'success' | 'processing' | 'default' | 'error' | 'warning';

/**
 * Use of this source code is governed by an MIT-style license that can be
 * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
 */

declare class NzBadgeComponent implements OnChanges, OnInit {
    nzConfigService: NzConfigService;
    private renderer;
    private cdr;
    private elementRef;
    private directionality;
    private destroyRef;
    readonly _nzModuleName: NzConfigKey;
    showSup: boolean;
    presetColor: string | null;
    dir: Direction;
    nzShowZero: boolean;
    nzShowDot: boolean;
    nzStandalone: boolean;
    nzDot: boolean;
    nzOverflowCount: number;
    nzColor?: string;
    nzStyle: Record<string, string> | null;
    nzText?: string | TemplateRef<void> | null;
    nzTitle?: string | null | undefined;
    nzStatus?: NzBadgeStatusType | string;
    nzCount?: number | TemplateRef<NzSafeAny>;
    nzOffset?: [number, number];
    nzSize: NzSizeDSType;
    noAnimation: NzNoAnimationDirective | null;
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    private prepareBadgeForRtl;
    get isRtlLayout(): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<NzBadgeComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NzBadgeComponent, "nz-badge", ["nzBadge"], { "nzShowZero": { "alias": "nzShowZero"; "required": false; }; "nzShowDot": { "alias": "nzShowDot"; "required": false; }; "nzStandalone": { "alias": "nzStandalone"; "required": false; }; "nzDot": { "alias": "nzDot"; "required": false; }; "nzOverflowCount": { "alias": "nzOverflowCount"; "required": false; }; "nzColor": { "alias": "nzColor"; "required": false; }; "nzStyle": { "alias": "nzStyle"; "required": false; }; "nzText": { "alias": "nzText"; "required": false; }; "nzTitle": { "alias": "nzTitle"; "required": false; }; "nzStatus": { "alias": "nzStatus"; "required": false; }; "nzCount": { "alias": "nzCount"; "required": false; }; "nzOffset": { "alias": "nzOffset"; "required": false; }; "nzSize": { "alias": "nzSize"; "required": false; }; }, {}, never, ["*"], true, never>;
    static ngAcceptInputType_nzShowZero: unknown;
    static ngAcceptInputType_nzShowDot: unknown;
    static ngAcceptInputType_nzStandalone: unknown;
    static ngAcceptInputType_nzDot: unknown;
}

/**
 * Use of this source code is governed by an MIT-style license that can be
 * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
 */

declare class NzRibbonComponent implements OnChanges {
    nzColor: string | undefined;
    nzPlacement: 'start' | 'end';
    nzText: string | TemplateRef<void> | null;
    presetColor: string | null;
    ngOnChanges(changes: SimpleChanges): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<NzRibbonComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NzRibbonComponent, "nz-ribbon", ["nzRibbon"], { "nzColor": { "alias": "nzColor"; "required": false; }; "nzPlacement": { "alias": "nzPlacement"; "required": false; }; "nzText": { "alias": "nzText"; "required": false; }; }, {}, never, ["*"], true, never>;
}

declare class NzBadgeModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<NzBadgeModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<NzBadgeModule, never, [typeof NzBadgeComponent, typeof NzRibbonComponent], [typeof NzBadgeComponent, typeof NzRibbonComponent]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<NzBadgeModule>;
}

export { NzBadgeComponent, NzBadgeModule, NzRibbonComponent };
