import * as _angular_core from '@angular/core';
import { WritableSignal, OutputEmitterRef } from '@angular/core';
/**
* @description
* Show and Conceal (SNC) component that toggles visibility of sensitive content with masked placeholder.
* Displays a configurable number of dots to represent hidden content length.
* Provides a toggle button to reveal or conceal the actual content.
* Commonly used for passwords, API keys, tokens, or other sensitive information that should be hidden by default.
* Emits visibility state changes for parent components to track or respond to content exposure.
*
* @usageNotes
* ### Basic Usage
* ```html
*
*
* MySecretPassword123
*
* ```
*
* ```typescript
* onToggle(isVisible: boolean) {
* console.log('Content is now:', isVisible ? 'visible' : 'hidden');
* }
* ```
*
* ### Accessibility
* - Toggle button should have clear aria-label indicating show/hide action
* - Announce state changes to screen readers using aria-live regions
* - Ensure keyboard navigation works for toggle button
*
* ### Notes
* - Default dotsLength is 8 characters
* - Content is hidden by default on component initialization
* - Use sncToggle event to track visibility changes for security logging
*/
declare class EuiSncComponent {
string: string;
/**
* Controls the visibility state of the concealed content.
* When true, displays actual content; when false, shows masked dots.
* Managed internally and toggled via user interaction.
*/
showContent: WritableSignal;
/**
* Emitted when the content visibility state changes via toggle button interaction.
* Payload: boolean indicating the new visibility state (true when content is shown, false when concealed).
*/
sncToggle: OutputEmitterRef;
/**
* Number of dot characters to display when content is concealed.
* Represents the approximate length of the hidden content for visual consistency.
* Automatically clamped to minimum value of 0.
* @default 8
*/
dotsLength: _angular_core.InputSignalWithTransform;
/**
* Computed property to determine the hidden text based on the dots length.
*/
protected readonly hiddenText: _angular_core.Signal;
toggleContent(): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration;
static ɵcmp: _angular_core.ɵɵComponentDeclaration;
}
declare const EUI_SNC: readonly [typeof EuiSncComponent];
export { EUI_SNC, EuiSncComponent };
//# sourceMappingURL=eui-components-eui-snc.d.ts.map