fixparser
Version:
FIX.Latest / 5.0 SP2 Parser / AI Agent Trading
44 lines (43 loc) • 1.91 kB
TypeScript
import { type ISpecGroups } from '../spec/SpecGroups.ts';
/**
* Class for managing FIX protocol groups.
* Provides functionality to find and filter groups based on various criteria.
* Uses caching to improve performance when looking up groups.
*/
export declare class Groups {
/** Array of all available groups from the FIX specification */
groups: ISpecGroups[];
/** Cache map for looking up groups by their ID */
cacheMap: Map<number, ISpecGroups>;
/** Cache map for looking up groups by their name */
cacheMapByName: Map<string, ISpecGroups>;
/**
* Creates a new Groups instance and initializes the cache maps.
* Populates both the ID-based and name-based cache maps for efficient lookups.
*/
constructor();
/**
* Finds a group by its component ID.
*
* @param {number} componentId - The ID of the group to find
* @returns {ISpecGroups | undefined} The found group, or undefined if not found
*/
find(componentId: number): ISpecGroups | undefined;
/**
* Finds a group by its name.
*
* @param {string} name - The name of the group to find
* @returns {ISpecGroups | undefined} The found group, or undefined if not found
*/
findByName(name: string): ISpecGroups | undefined;
/**
* Filters and finds a group based on the NoMDEntries tag and message type.
* Handles special cases for MarketDataSnapshotFullRefresh and MarketDataIncrementalRefresh messages.
* Falls back to searching by numInGroup ID if no special case matches.
*
* @param {number} tag - The tag number to filter by (typically NoMDEntries)
* @param {string} messageType - The type of the message being processed
* @returns {ISpecGroups | undefined} The found group, or undefined if not found
*/
filterMapByNumInGroupId(tag: number, messageType: string): ISpecGroups | undefined;
}