/* Copyright 2023 New Vector Ltd. SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial Please see LICENSE files in the repository root for full details. */ import React, { type PropsWithChildren, forwardRef, type ForwardedRef, type Ref, } from "react"; interface ButtonComponent { // With the explicit `as` prop ( props: { as: C } & UnstyledButtonPropsFor, ): React.ReactElement; // Without the explicit `as` prop, defaulting to a