export interface IndexTicketingConfig {
    /** Base URL of your ticketing system */
    endpoint: string;
    /** API key for authentication */
    apiKey: string;
    /** Project ID where tickets should be created */
    projectId: string;
    /** Organization ID */
    organizationId: string;
    /** Environment (development, staging, production) */
    environment?: string;
    /** Release version */
    release?: string;
    /** User context */
    user?: {
        id?: string;
        email?: string;
        name?: string;
    };
    /** Custom tags */
    tags?: Record<string, string>;
    /** Enable/disable automatic error capture */
    autoCapture?: boolean;
    /** Sample rate (0.0 to 1.0) */
    sampleRate?: number;
    /** Maximum breadcrumbs to keep */
    maxBreadcrumbs?: number;
    /** Filters for sensitive data */
    beforeSend?: (event: ErrorEvent) => ErrorEvent | null;
}
export interface ErrorEvent {
    /** Error message */
    message: string;
    /** Error stack trace */
    stackTrace?: string;
    /** Error level */
    level: 'error' | 'warning' | 'info' | 'debug';
    /** Timestamp */
    timestamp: number;
    /** User context */
    user?: {
        id?: string;
        email?: string;
        name?: string;
    };
    /** Browser/environment info */
    environment: {
        userAgent?: string;
        url?: string;
        referrer?: string;
        platform?: string;
        timestamp: number;
    };
    /** Custom tags */
    tags?: Record<string, string>;
    /** Breadcrumbs leading to error */
    breadcrumbs?: Breadcrumb[];
    /** Additional context */
    extra?: Record<string, any>;
    /** Error fingerprint for grouping */
    fingerprint?: string[];
}
export interface Breadcrumb {
    /** Breadcrumb message */
    message: string;
    /** Category (navigation, ui, http, etc.) */
    category?: string;
    /** Level */
    level?: 'info' | 'warning' | 'error' | 'debug';
    /** Timestamp */
    timestamp: number;
    /** Additional data */
    data?: Record<string, any>;
}
export interface TicketPayload {
    title: string;
    description: string;
    priority: 'low' | 'medium' | 'high' | 'urgent';
    projectId: string;
    organizationId: string;
    metadata: {
        source: 'index-ticketing';
        errorEvent: ErrorEvent;
        environment: string;
        release?: string;
    };
}
//# sourceMappingURL=types.d.ts.map