/**
 * Metadata for projection
 */
export interface ProjectionMetadata {
    name: string;
    eventTypes?: string[];
    autoUpdate?: boolean;
    snapshotFrequency?: number;
}
/**
 * Key for projection metadata
 */
export declare const PROJECTION_METADATA: unique symbol;
/**
 * Decorator to mark class as projection
 */
export declare function Projection(metadata?: Partial<ProjectionMetadata>): <T extends new (...args: any[]) => any>(constructor: T) => T;
/**
 * Function to get projection metadata
 */
export declare function getProjectionMetadata(target: any): ProjectionMetadata | undefined;
//# sourceMappingURL=projection.decorator.d.ts.map