import { ClassPrototype, MethodKeysOf } from '../../../types/class.type';
import { VegaPublicAPIRuntimeMetricsSlimmerBase } from './public-api-runtime-metrics-slimmer-base';
/**
 * The function `createComponentUsageRuntimeMetricsSlimmer` creates a slimmer version of a component
 * usage runtime metrics object based on a given class prototype and optional method names to watch.
 *
 * @param {ClassPrototype} mapFromClass - The `mapFromClass` parameter is a ClassPrototype that represents the class
 * from which the dynamic map will be created.
 * @param {MethodKeysOf[]} [watchMethodNames] - The `watchMethodNames` parameter
 * is an optional array of method names that you want to watch for in the component.
 * @param {unknown[]} [initData] - The `initData` parameter allows you to
 * pass an array of initial data to be used during the initialization of the component usage runtime
 * metrics slimmer.
 * @returns {VegaPublicAPIRuntimeMetricsSlimmerBase} The function creates a dynamic public api runtime metrics slimmer.
 */
export declare function createPublicAPIRuntimeMetricsSlimmer<T>(mapFromClass: ClassPrototype<T>, watchMethodNames: MethodKeysOf<T>[], initData: unknown[]): VegaPublicAPIRuntimeMetricsSlimmerBase;
