If you need to get measurement information from a single pulse, then I suggest a comparator & integrator to determine pulse width, and an integrator on the output of your photodiode amplifier to get some energy measurement.
If you can use a series of pulses, you can reconstruct a pulse with a high speed sample and hold and vary the timing of each sample, (trigger on start of pulse, trigger + 10 pS, trigger + 20 pS, up to the width of your pulse...) digitize each sample fairly slowly (1 kHz rate), and analyze the results in software.
The timing circuit and sample and hold that are going to be operating at gigahertz frequencies are the difficult, expensive bits, and you don't want to cut corners there.
Another realtime approach is to have a small bank of comparators with various thresholds, each with an integrator to get a pulse width measurement.
Basically, you're making an AD converter with good amplitude accuracy but lousy resolution, and pretty good time resolution.
Develop some a priori information about the pulses, rent a high speed DSO for a month and make some measurements. Then you should be able to correlate the results from your ADC to some decent results.