import { DesignToken, FoundationElement } from '@ni/fast-foundation';
import { type Subscriber } from '@ni/fast-element';
export type DesignTokensFor<ObjectT> = {
    [key in keyof ObjectT]: string | undefined;
};
/**
 * Base class for label providers
 */
export declare abstract class LabelProviderBase<SupportedLabels extends {
    [key: string]: DesignToken<string>;
}> extends FoundationElement implements Subscriber {
    protected abstract supportedLabels: SupportedLabels;
    private readonly propertyNotifier;
    private themeProvider?;
    connectedCallback(): void;
    disconnectedCallback(): void;
    handleChange(_element: LabelProviderBase<SupportedLabels>, property: keyof LabelProviderBase<SupportedLabels>): void;
    private initializeThemeProvider;
}
