/** * Copyright IBM Corp. 2023, 2025 * * This source code is licensed under the Apache-2.0 license found in the * LICENSE file in the root directory of this source tree. */ /** * For "as" props. Creates an "as" property that supports native html tags such as 'span', 'a', 'button' as well as custom functional components * All native props for the supplied html tag/component are inferred as part of the base component props, allowing us to use props like `href` on an 'a' element etc */ export type PolymorphicProps = Props & Omit, 'as'> & { as?: Element; }; export interface TranslateWithId> { /** * Translates component strings using your i18n tool. * * @param messageId - The translation ID for the string to translate. * @param [args] - Arguments for string interpolation. * @returns The translated string. */ translateWithId?(messageId: MID, args?: ARGS): string; } export type TFunc> = NonNullable['translateWithId']>;