export declare const baseEntityRe: RegExp; export declare const basePlayerRe: RegExp; export declare const vectorRe: RegExp; export declare const entityRe: RegExp; export declare enum Team { Unassigned = 0, Spectators = 1, Terrorists = 2, CounterTerrorists = 3, Unknown = 999 } export type EntityID = number; export type KillModifier = 'attackerblind' | 'attackerinair' | 'headshot' | 'penetrated' | 'throughsmoke' | 'noscope'; export type SuicideMethod = 'world' | 'hegrenade' | 'inferno'; export type ConnectionState = 'connected' | 'entered' | 'disconnected'; export type HitGroup = 'generic' | 'head' | 'chest' | 'stomach' | 'left_arm' | 'right_arm' | 'left_leg' | 'right_leg'; export type SayTo = 'all' | 'team'; export type Entity = WorldEntity | ConsoleEntity | ChickenEntity | PlayerEntity | BotEntity | MultiplayerPhysicsPropEntity | DynamicPropEntity; export type Vector = [number, number, number]; export interface BaseEvent { name: T; payload: P; receivedAt: Date; } export interface BaseParser> { name: T['name']; patterns: RegExp[]; parse(groups: Record): T['payload']; } interface BaseEntity { type: string; } interface IdentifiedEntity extends BaseEntity { id: EntityID; } interface PositionedEntity extends IdentifiedEntity { position?: Vector; } export interface MultiplayerPhysicsPropEntity extends PositionedEntity { type: 'prop_physics_multiplayer'; } export interface DynamicPropEntity extends PositionedEntity { type: 'prop_dynamic'; } export interface WorldEntity extends BaseEntity { type: 'world'; } export interface ConsoleEntity extends BaseEntity { type: 'console'; } export interface ChickenEntity extends PositionedEntity { type: 'chicken'; id: EntityID; } export interface BasePlayerEntity extends PositionedEntity { id: EntityID; name: string; position?: Vector; team: Team; } export interface PlayerEntity extends BasePlayerEntity { type: 'player'; steamId3: string; steamId64: string; } export interface BotEntity extends BasePlayerEntity { type: 'bot'; } export declare function parseTeam(rawTeam: string): Team; export declare function parseKillModifiers(rawModifiers?: string): KillModifier[]; export declare function parseConnectionState(rawState?: string): ConnectionState; export declare function parseHitGroup(rawHitGroup: string): HitGroup; export declare function parseEquipmentList(rawEquipmentList: string): string[]; export declare function parseEntity(rawEntity: string): Entity; export declare function parseVector(rawVector?: string): Vector; export declare function concatPattern(literals: TemplateStringsArray, ...placeholders: (string | RegExp)[]): RegExp; export declare function defineParser>(parser: BaseParser): BaseParser; export {};