Sending / Receiving CW signal through infrared

what’s the closest I can get to sending/receiving a CW IR signal on a carrier frequency of my choosing? The furi_hal_infrared.h libraries seem heavily abstracted with messages, DMA, Callbacks etc.
I’m looking for a simple on/off and set frequency functionality - just like furi_hal_speaker_start but for IR.
For receiving I’d want to set a listening frequency and the ability to set some kind of a rising/falling edge ISR.

I’ve tried digging through furi_hal_infrared but i can’t find primitives like that. Also I can’t find documentation on how the IR hardware is connected to the MCU. Any ideas?