@aircast-4g/mavlink
Version:
TypeScript type generator for MAVLink dialects
34 lines (31 loc) • 974 B
TypeScript
import { IMessageSerializer } from './types.js';
import { MessageRegistry } from './message-registry.js';
/**
* Serializes MAVLink messages to bytes.
* Delegates message lookup to MessageRegistry.
*/
declare class MessageSerializer implements IMessageSerializer {
private readonly registry;
constructor(registry: MessageRegistry);
/**
* Serialize a message to MAVLink bytes
*/
serializeMessage(message: Record<string, unknown> & {
message_name: string;
}): Uint8Array;
/**
* Complete a message with default values for all undefined fields
*/
completeMessage(message: Record<string, unknown> & {
message_name: string;
}): Record<string, unknown>;
/**
* Extract message fields from payload structure
*/
private extractMessageFields;
/**
* Complete message with default values for missing fields
*/
private completeMessageWithDefaults;
}
export { MessageSerializer };