/**
 * Event-related constants
 *
 * Shared constants for event content types and booking system integration.
 */
import type { OccurrenceContextData } from '../../PageRenderer';
/**
 * Content type slugs that represent event content.
 * These are the standard slugs used when creating event content types in the CMS.
 *
 * Used by:
 * - Occurrence resolution to detect event pages
 * - Event Calendar block to identify event content
 * - Content type definitions
 */
export declare const EVENT_CONTENT_TYPE_SLUGS: readonly ["event", "events"];
/**
 * Type for event content type slugs
 */
export type EventContentTypeSlug = (typeof EVENT_CONTENT_TYPE_SLUGS)[number];
/**
 * Event card category badge palette tokens (fallback colors).
 *
 * Keep in sync with the CSS selectors in `packages/blocks/src/theme/blocks-static/index.css`.
 */
export declare const EVENT_CATEGORY_BADGE_TOKENS: readonly ["primary", "secondary", "accent"];
export type EventCategoryBadgeToken = (typeof EVENT_CATEGORY_BADGE_TOKENS)[number];
/**
 * Check if a content type slug represents an event type
 */
export declare function isEventContentType(slug: string | null | undefined): boolean;
/**
 * Preview context returned by getPreviewContext.
 * Contains mock data needed for template previews based on content type.
 */
export type PreviewContext = {
    /** Mock occurrence context for event content types */
    occurrenceContext: OccurrenceContextData | null;
};
/**
 * Get preview context for a content type.
 *
 * Returns mock context data needed for template previews based on the content type.
 * This allows TemplatePreview to remain generic while content-type-specific
 * mock data lives in the blocks package.
 *
 * @param contentTypeKey - The content type key/slug (e.g., 'event', 'blog-post')
 * @returns Preview context with mock data appropriate for the content type
 *
 * @example
 * ```typescript
 * const previewContext = getPreviewContext('event');
 * // Returns: { occurrenceContext: { id: '...', startsAt: '...', ... } }
 *
 * const previewContext = getPreviewContext('blog-post');
 * // Returns: { occurrenceContext: null }
 * ```
 */
export declare function getPreviewContext(contentTypeKey: string | null | undefined): PreviewContext;
