You can use values and types as a set by defining both the component and its Props as Button
.
export type Button = { ... };
export function Button(props: Button) { ... }
import { Button } from "./button";
export type Props = Button & { ... };
export function NavigationButton(props: Props) {
return <Button {...props} className={{ ... }} />;
}