@pimzino/claude-code-spec-workflow
Version:
Automated workflows for Claude Code. Includes spec-driven development (Requirements → Design → Tasks → Implementation) with intelligent task execution, optional steering documents and streamlined bug fix workflow (Report → Analyze → Fix → Verify). We have
76 lines • 1.78 kB
TypeScript
import { EventEmitter } from 'events';
export interface VisitorInfo {
id: string;
firstSeen: Date;
lastSeen: Date;
accessCount: number;
userAgent: string;
hashedIp: string;
}
export interface UsageMetrics {
totalVisitors: number;
activeVisitors: number;
totalAccesses: number;
visitors: VisitorInfo[];
startTime: Date;
lastActivity: Date;
}
export interface AccessEvent {
ip: string;
userAgent: string;
path: string;
timestamp: Date;
}
export declare class UsageTracker extends EventEmitter {
private visitors;
private startTime;
private lastActivity;
private totalAccesses;
private activeTimeout;
constructor();
/**
* Track a new access event
*/
trackAccess(event: AccessEvent): void;
/**
* Get current usage metrics
*/
getMetrics(): UsageMetrics;
/**
* Get metrics for a specific visitor
*/
getVisitorMetrics(visitorId: string): VisitorInfo | null;
/**
* Clear all metrics (for privacy or reset)
*/
clearMetrics(): void;
/**
* Remove inactive visitors (privacy cleanup)
*/
cleanupInactiveVisitors(maxAge?: number): number;
/**
* Hash IP address for privacy preservation
*/
private hashIp;
/**
* Generate a unique visitor ID
*/
private generateVisitorId;
/**
* Get active visitor count
*/
getActiveVisitorCount(): number;
/**
* Set active timeout duration
*/
setActiveTimeout(timeout: number): void;
/**
* Export metrics as JSON
*/
exportMetrics(): string;
/**
* Classify user agent for privacy-preserving analytics
*/
private classifyUserAgent;
}
//# sourceMappingURL=usage-tracker.d.ts.map