import { type ComponentPropsWithoutRef, type MouseEvent, type ReactNode } from "react";
import { type CardRadius } from "../Card";
export type ConnectorRole = "source" | "destination" | "bidirectional";
export type ConnectorAuth = "oauth" | "api-key" | "basic" | "ssh" | "iam" | "service-account" | "none";
export type ConnectorStatus = "connected" | "disconnected" | "error" | "syncing" | "configured" | "coming-soon";
export interface ConnectorCardStat {
    /** Label rendered in muted uppercase mono (e.g. "Last sync"). */
    label: ReactNode;
    /** Value rendered in tabular mono (e.g. "2 min ago", "142", "0.4s"). */
    value: ReactNode;
}
export interface ConnectorCardProps extends Omit<ComponentPropsWithoutRef<"div">, "title" | "role" | "onChange" | "onClick" | "onDrag" | "onDragStart" | "onDragEnd" | "onAnimationStart"> {
    /** Connector display name (e.g. "Postgres", "Snowflake"). */
    name: ReactNode;
    /** Heading level for the name. Default `"h3"`. */
    nameAs?: "h1" | "h2" | "h3" | "h4" | "h5" | "h6";
    /** Brand logo or icon node (rendered in a 36×36 tile). */
    logo?: ReactNode;
    /** Connector role — drives the role chip. */
    role?: ConnectorRole;
    /** Auth method — drives the auth chip. */
    auth?: ConnectorAuth;
    /** Live connection status — drives the colored dot + pill. */
    status?: ConnectorStatus;
    /** Override the status pill label (defaults to the humanized status). */
    statusLabel?: ReactNode;
    /** Short tagline / description (1–2 lines). */
    description?: ReactNode;
    /** Stat strip below the description (e.g. last-sync / tables / lag). */
    stats?: ConnectorCardStat[];
    /** Tag chips (e.g. "warehouse", "saas", "beta"). */
    tags?: ReactNode[];
    /** Right-aligned trailing action in the header (icon button, badge). */
    trailing?: ReactNode;
    /** Bottom action slot (Button, link). */
    action?: ReactNode;
    /** Visual size. Default `"md"`. */
    size?: "sm" | "md" | "lg";
    /** Render the card as a real `<a>` when href is provided. */
    href?: string;
    /** Whole-card click handler. */
    onClick?: (e: MouseEvent<HTMLDivElement>) => void;
    /** Disable interaction. */
    disabled?: boolean;
    /** Card corner radius (passes through). */
    radius?: CardRadius;
}
export declare const ConnectorCard: import("react").ForwardRefExoticComponent<ConnectorCardProps & import("react").RefAttributes<HTMLDivElement>>;
//# sourceMappingURL=ConnectorCard.d.ts.map