/// export declare const SINGLE_OPERATION_HEADER_SIZE = 13; export declare const OP: { GENERAL_RESPONSE: number; INIT_REQUEST: number; INIT_RESPONSE: number; ALIVE_REQUEST: number; ALIVE_RESPONSE: number; INJECT_RESPONSE: number; INJECT_COMPLETE_RESPONSE: number; CONFIG_REQUEST: number; CONFIG_RESPONSE: number; PROVISIONING_REQUEST: number; PROVISIONING_RESPONSE: number; FAULT_REQUEST: number; FAULT_RESPONSE: number; AS_ALIVE_REQUEST: number; AS_ALIVE_RESPONSE: number; name(id: number): string; }; export declare const MULTIPLE_OPERATION_INDICATOR = 65535; export declare const MOP: { INJECT_SECTION: number; SPLICE: number; SPLICE_NULL: number; START_SCHEDULE_DOWNLOAD: number; TIME_SIGNAL_REQUEST: number; TRANSMIT_SCHEDULE: number; COMPONENT_MODE_DPI: number; ENCRYPTED_DPI: number; INSERT_DESCRIPTOR: number; INSERT_DTMF_DESCRIPTOR: number; INSERT_AVAIL_DESCRIPTOR: number; INSERT_SEGMENTATION_DESCRIPTOR: number; PROPRIETARY_COMMAND: number; SCHEDULE_COMPONENT_MODE: number; SCHEDULE_DEFINITION: number; INSERT_TIER: number; INSERT_TIME_DESCRIPTOR: number; DELETE_CONTROLWORD: number; UPDATE_CONTROLWORD: number; name(id: number): string; }; export declare const RESULT: { SUCCESS: number; ACCESS_DENIED: number; CODE_WORD_MISSING: number; DEPROVISIONED: number; NOT_SUPPORTED: number; DUPLICATE_SERVICE_NAME: number; DUPLICATE_SERVICE_NAME_OK: number; ENCRYPTION_NOT_SUPPORTED: number; ILLEGAL_DPI_PID: number; INCONSISTENT_DPI_PID: number; INJECTOR_IN_USE: number; NOT_PROVISIONED_TO_SERVE_AS: number; NOT_PROVISIONED_FOR_DPI: number; INJECTOR_WILL_BE_REPLACED: number; INVALID_MESSAGE_SIZE: number; INVALID_MESSAGE_SYNTAX: number; INVALID_VERSION: number; NO_FAULT_FOUND: number; SERVICE_NAME_IS_MISSING: number; DPI_PID_NOT_FOUND: number; SPLICE_REQUEST_FAILED: number; BAD_SPLICE_REQUEST_PARAMETER: number; PREROLL_TOO_SMALL: number; TIME_TYPE_UNSUPPORTED: number; UNKNOWN_FAILURE: number; UNKNOWN_OPID: number; UNKNOWN_DPI_PID: number; VERSION_MISMATCH: number; PROXY_RESPONSE: number; name(id: number): string; }; export declare const TIME_TYPE_NONE = 0; export declare const TIME_TYPE_UTC = 1; export declare const TIME_TYPE_SMPTE_VITC = 2; export declare const TIME_TYPE_GPI = 3; export declare const SPLICE_START_NORMAL = 1; export declare const SPLICE_START_IMMEDIATE = 2; export declare const SPLICE_END_NORMAL = 3; export declare const SPLICE_END_IMMEDIATE = 4; export declare const SPLICE_CANCEL = 5; export declare const TIME_NONE: { time_type: 0; }; export interface SingleOperationMessageHeaderInit { opID: number; result: number; result_extension?: number; protocol_version: number; AS_index: number; message_number: number; DPI_PID_index: number; } export interface SingleOperationMessageHeader extends SingleOperationMessageHeaderInit { opID: number; messageSize: number; result: number; result_extension?: number; protocol_version: number; AS_index: number; message_number: number; DPI_PID_index: number; } export interface Message { opID: number; } export interface SingleOperationMessage extends Message, SingleOperationMessageHeader { data: Buffer; } export interface Timestamp { time_type: 0 | 1 | 2 | 3; } export interface TimestampType1 extends Timestamp { time_type: 1; UTC_seconds: number; UTC_microseconds: number; } export interface TimestampType2 extends Timestamp { time_type: 2; hours: number; minutes: number; seconds: number; frames: number; } export interface TimestampType3 extends Timestamp { time_type: 3; GPI_number: number; GPI_edge: number; } export interface OperationMessage { opID: number; data?: Buffer; } export interface CustomOperationMessage extends OperationMessage { opID: number; data?: Buffer; } export interface InjectSection extends OperationMessage { opID: 0x0100; SCTE35_protocol_version: number; SCTE35_command_type: number; SCTE35_command_contents: Buffer; } export interface Splice extends OperationMessage { /** * Use SCTE104.OP.SPLICE (0x0101) */ opID: 0x0101; /** * Use one of SCTE104.SPLICE_START_* or SCTE104.SPLICE_END_* * (1-byte unsigned integer, min=0, max=255) */ splice_insert_type: number; /** * Specify an ID for this splice event. Must be unique when * the event is submitted, and remain unique until the event is * processed according to the specified timestamp/GPI trigger. */ splice_event_id: number; /** * SHOULD be the unique identifier of the viewing event that this splice * event is designated for. */ unique_program_id: number; /** * Specify the pre-roll time for this splice event in milliseconds. * SCTE 104 specifies that pre-roll time SHALL be no less * than 4000 milliseconds in keeping with the advice from SCTE 67 */ pre_roll_time: number; break_duration: number; avail_num: number; avails_expected: number; auto_return_flag: number; } export interface InsertDescriptor extends OperationMessage { opID: 0x0108; descriptor_image: Buffer[]; } export interface InsertDTMFDescriptor extends OperationMessage { opID: 0x0109; preroll: number; dtmf: Buffer; } export interface InsertSegmentationDescriptor extends OperationMessage { opID: 0x010B; segmentation_event_id: number; segmentation_event_cancel_indicator: number; duration: number; segmentation_upid_type: number; segmentation_upid: number[]; segmentation_type_id: number; segment_num: number; segments_expected: number; duration_extension_frames: number; delivery_not_restricted_flag: number; web_delivery_allowed_flag: number; no_regional_blackout_flag: number; archive_allowed_flag: number; device_restrictions: number; } export interface ProprietaryCommand extends OperationMessage { opID: 0x010C; proprietary_id: number; proprietary_command: number; proprietary_data: Buffer; } export interface InsertAvailDescriptor extends OperationMessage { opID: 0x010A; provider_avail_id: number[]; } export interface InsertTier extends OperationMessage { opID: 0x010F; tier: number; } export interface InsertTimeDescriptor extends OperationMessage { opID: 0x0110; TAI_seconds: number; TAI_ns: number; UTC_offset: number; } export interface MultipleOperationMessage { reserved: number; messageSize: number; protocol_version: number; AS_index: number; message_number: number; DPI_PID_index: number; SCTE35_protocol_version: number; timestamp: Timestamp; operations: OperationMessage[]; } export interface MultipleOperationMessageInit { timestamp?: Timestamp; operations: OperationMessage[]; }