export interface PlatformerPlatform {
    x: number;
    y: number;
    width: number;
    height: number;
    type?: 'ground' | 'platform' | 'hazard' | 'goal';
}
export interface PlatformerPlayer {
    x: number;
    y: number;
    width?: number;
    height?: number;
    vx?: number;
    vy?: number;
    grounded?: boolean;
    facingRight?: boolean;
}
export interface PlatformerCanvasProps {
    /** Player state data */
    player?: PlatformerPlayer;
    /** Static platforms / level geometry */
    platforms?: readonly PlatformerPlatform[];
    /** World dimensions */
    worldWidth?: number;
    worldHeight?: number;
    /** Canvas display size */
    canvasWidth?: number;
    canvasHeight?: number;
    /** Camera follows player */
    followCamera?: boolean;
    /** Background color */
    bgColor?: string;
    /** Player sprite image URL */
    playerSprite?: string;
    /** Map of platform type to tile sprite URL */
    tileSprites?: Record<string, string>;
    /** Background image URL */
    backgroundImage?: string;
    /** Base URL prefix for asset URLs */
    assetBaseUrl?: string;
    /** Event names for keyboard controls */
    leftEvent?: string;
    rightEvent?: string;
    jumpEvent?: string;
    stopEvent?: string;
    /** Additional CSS classes */
    className?: string;
}
export declare function PlatformerCanvas({ player, platforms, worldWidth, worldHeight, canvasWidth, canvasHeight, followCamera, bgColor, playerSprite, tileSprites, backgroundImage, assetBaseUrl, leftEvent, rightEvent, jumpEvent, stopEvent, className, }: PlatformerCanvasProps): import("react/jsx-runtime").JSX.Element;
export declare namespace PlatformerCanvas {
    var displayName: string;
}
