import React from 'react';
import type { OSPlatformId } from '../../utils/os-platforms';
import { type TagProps } from './tag';
export interface Device {
    id?: string;
    machineId?: string;
    name: string;
    type?: 'desktop' | 'laptop' | 'mobile' | 'tablet' | 'server';
    operatingSystem?: OSPlatformId | 'macos' | 'ios' | 'android';
    organization?: string;
    status?: 'active' | 'inactive' | 'offline' | 'warning' | 'error';
    lastSeen?: string | Date;
    tags?: string[];
    ipAddress?: string;
    macAddress?: string;
    version?: string;
    location?: string;
}
export interface ActionButton {
    label: string;
    onClick?: () => void;
    variant?: 'default' | 'outline' | 'secondary';
    visible?: boolean;
}
export interface DeviceCardProps extends React.HTMLAttributes<HTMLDivElement> {
    device: Device;
    actions?: {
        moreButton?: {
            visible?: boolean;
            onClick?: () => void;
        };
        detailsButton?: {
            visible?: boolean;
            component?: React.ReactNode;
        };
        customActions?: ActionButton[];
    };
    statusTag?: TagProps;
    onDeviceClick?: (device: Device) => void;
}
export declare function DeviceCard({ device, actions, statusTag, onDeviceClick, className, ...props }: DeviceCardProps): React.JSX.Element;
//# sourceMappingURL=device-card.d.ts.map