import type { Theme } from '../schema';
import type { ButtonSystem } from './types';
/**
 * Generate default button system from theme settings.
 *
 * Creates 4 sized variants when theme.buttons is not defined:
 * 1. Primary - primary color background with opacity-reduce hover effect
 * 2. Secondary - neutral-700 background with opacity-reduce hover effect
 * 3. Outline - transparent background with primary border and opacity-reduce hover effect
 * 4. Ghost - transparent background, no border, with opacity-reduce hover effect
 *
 * All four are sized variants — they inherit padding/fontSize from the theme's
 * `sizes` config (or the system defaults) so they're consistent at any size.
 *
 * Variants use theme settings for:
 * - Border radius (via global.cornerStyle / theme.corners)
 * - Shadow (via global.shadow / theme.shadow.elevation)
 * - Border width for outline (from theme.border.width)
 *
 * @param theme - Theme configuration
 * @returns ButtonSystem with 4 default sized variants
 */
export declare function generateDefaultButtonSystem(theme: Theme): ButtonSystem;
