import * as Schema from 'effect/Schema';
import { type Obj } from '@dxos/echo';
export declare const SurfaceCardRole: Schema.Literal<["card", "card--popover", "card--intrinsic", "card--extrinsic", "card--transclusion"]>;
export type SurfaceCardRole = Schema.Schema.Type<typeof SurfaceCardRole>;
export type SurfaceRole = 'item' | 'article' | 'complementary' | 'section' | SurfaceCardRole;
/**
 * Base type for surface components.
 */
export type SurfaceComponentProps<Subject extends Obj.Any = Obj.Any, Role extends string = string> = {
    role?: Role;
    /** The primary object being displayed. */
    subject: Subject;
};
//# sourceMappingURL=types.d.ts.map