export type C2Protocol = 'https' | 'wss' | 'grpc' | 'dns' | 'icmp' | 'smb' | 'mqtt' | 'tcp'; export interface C2Config { protocols: C2Protocol[]; primaryProtocol: C2Protocol; frontendDomain: string; c2Domain: string; heartbeatInterval: number; jitterPercent: number; ja4Profile?: string; encryptionKey?: Buffer; } export interface C2Session { id: string; protocol: C2Protocol; established: string; heartbeatInterval: number; ja4Fingerprint: string; encryption: { algorithm: string; keyLength: number; }; failoverOrder: C2Protocol[]; active: boolean; } export interface DomainFrontConfig { cdn: string; frontHost: string; frontHeader: string; edgeDomains: string[]; } export declare const DOMAIN_FRONTS: Record; export declare function getDomainFront(cdnName: string): DomainFrontConfig; export declare function getDomainFronts(): string[]; export declare function chimera(config?: Partial): C2Session; export declare function rotateJA4(): string; export declare function getJA4Pool(): string[]; export declare function getProtocolPriority(p: C2Protocol): number; /** * Generate a full C2 session with domain fronting configuration. * Returns the C2 session metadata + a deployable fronting config. */ export declare function chimeraFronted(config?: Partial & { frontCdn?: string; }): { session: C2Session; front: DomainFrontConfig; beaconConfig: { primaryEndpoint: string; fallbackEndpoints: string[]; headers: Record; heartbeatMs: number; jitterMs: number; userAgent: string; encryption: { algorithm: string; keyHex: string; }; }; }; //# sourceMappingURL=chimera.d.ts.map