import type { HTMLTag, Polymorphic } from "corvos/plugins/jsx.ts";
export type Props = Polymorphic<{
"as"?: Tag;
"label-as"?: string;
"pill"?: boolean;
"icon"?: JSX.Element;
"pre"?: JSX.Element;
"post"?: JSX.Element;
"highlighted"?: boolean;
"selected"?: boolean;
"wide"?: boolean;
"justify"?: boolean;
"align-block"?: boolean;
"level"?: "button" | "badge" | "quiet";
"variant"?: "accent" | "positive" | "negative" | "warning" | "static-black" | "static-white";
"size"?: "xs" | "sm" | "lg" | "xl";
"children"?: JSX.Element;
}>;
export const ActionButton = ({
children,
as: Tag = "a" as T,
"label-as": Label = "span",
pill,
pre,
post,
wide,
justify,
icon,
"align-block": alignBlock,
highlighted,
selected,
level,
variant,
size,
class: cls,
...props
}: Props) => (
{pre} {icon ?? } {post}
);