import type { EventEmitter } from "./stencil-public-runtime";
/**
 * Generate a unique ID with an optional prefix, similar to React's useId hook.
 */
export declare function useId(prefix?: string): string;
export declare function inheritAttributes(el: HTMLElement, shadowElement?: HTMLElement, attributes?: string[]): Record<string, string>;
export declare function hasSlot(el: HTMLElement, name?: string): boolean;
/**
 * Emit event with logic to cancel HTML events
 * Returns false if event has been prevented
 * @param e - event
 * @param customEvent - custom event
 * @param value - value
 */
export declare function emitEvent(e: Event, customEvent: EventEmitter, value?: unknown): boolean;
/**
 * Log validation error for required properties in components
 * @param name - name of the component i.e. <dds-*>
 * @param errorArr - array of attributes with errors
 * @param optionalAttrsArrToRemove - array of optional attributes with errors to be removed from this error message
 */
export declare function logError(name: string, errorArr: string[], optionalAttrsArrToRemove?: string[]): void;
/**
 * Log validation error for required properties in components
 * @param errors - array of attributes with errors
 * @param propertyName - name of the property being checked
 * @param property - value of the property being checked
 * @param external - boolean value for an external check on property value
 * @returns modified array of errors
 */
export declare function handleErrors(errors: string[], propertyName: string, property: string | boolean | object, external?: boolean): string[];
