export interface User {
    id: string;
    email: string;
    password: string;
    role: 'admin' | 'developer' | 'read-only';
    createdAt: Date;
    updatedAt: Date;
}
export interface ApiKey {
    id: string;
    name: string;
    service: string;
    encryptedValue: string;
    userId: string;
    teamId?: string;
    metadata?: Record<string, any>;
    lastUsed?: Date;
    rotationSchedule?: string;
    createdAt: Date;
    updatedAt: Date;
}
export interface Team {
    id: string;
    name: string;
    ownerId: string;
    members: TeamMember[];
    createdAt: Date;
    updatedAt: Date;
}
export interface TeamMember {
    userId: string;
    role: 'admin' | 'developer' | 'read-only';
    joinedAt: Date;
}
export interface AccessLog {
    id: string;
    userId: string;
    keyId: string;
    action: 'retrieve' | 'create' | 'update' | 'delete';
    timestamp: Date;
    ipAddress: string;
    userAgent: string;
}
export interface AuthToken {
    token: string;
    userId: string;
    expiresAt: Date;
}
export interface ScanResult {
    file: string;
    line: number;
    type: 'api-key' | 'secret' | 'token' | 'private-key' | 'wallet-address' | 'mnemonic-seed';
    service: string;
    severity: 'critical' | 'high' | 'medium' | 'low';
    value: string;
}
export interface AuthResponse {
    message: string;
    token: string;
    user: {
        id: string;
        email: string;
        role: string;
    };
}
export interface ApiKeyResponse {
    id: string;
    name: string;
    service: string;
    maskedValue: string;
    lastUsed: string | null;
    rotationSchedule: string | null;
    createdAt: string;
    updatedAt: string;
}
export interface ApiKeysListResponse {
    keys: ApiKeyResponse[];
}
export interface CreateKeyResponse {
    message: string;
    key: {
        id: string;
        name: string;
        service: string;
        maskedValue: string;
        createdAt: string;
    };
}
export interface AnalyticsResponse {
    success: boolean;
    data: {
        totalKeys: number;
        recentActivity: any[];
        securityScore: number;
    };
}
export interface ScanResultResponse {
    success: boolean;
    data: {
        results: ScanResult[];
        scannedFile?: string;
        scannedPath?: string;
        timestamp: string;
        filesScanned: number;
        secretsFound: number;
    };
}
//# sourceMappingURL=types.d.ts.map