What are the types of NOTAMs and how do USA NOTAMs differ from the ICAO definitions?
There are significant differences between US domestic NOTAMs and international NOTAMs, please note that US NOTAM Office issues NOTAMs in both formats (NOTAMs susceptible to affect international flights being issued in international format). Canada is also issuing domestic NOTAMs in the same format than US.


encoding is different, US domestic encoding is described in FAA order 7930.2R (https://www.faa.gov/documentLibrary/media/Order/7930.2R_basic_dtd_1_5_17_(2).pdf), international NOTAM encoding is defined by ICAO doc 84000
Domestic NOTAMs are mainly split between D NOTAMs (about airports and navigation facilities) and FDC NOTAMs (about airspace, procedures or regulations), there are also military NOTAMs with more subtypes.
there is to my knowledge no document describing in detail all differences between both encodings, although the FAA order 7930.2R is quite detailed and provide information on both types and some list of differences.
other documents are useful, for example https://www.faa.gov/documentLibrary/media/Advisory_Circular/150-5200-28F.pdf that provides guidance on using the NOTAM system for reporting airport facilities changes or outages and for 
utilizing the Runway Condition Assessment Matrix for airport condition reporting


There are many differences between both formats, for example:


domestic NOTAMs are easily recognized as they start with an exclamation point !
the international NOTAM encoding is more structured. For example, a Q field will summarize essential NOTAM information, including affected FIR, vertical boundaries, geographic coordinates. In US NOTAM, geographic coordinates is described in the text of the NOTAM and then less easily decoded automatically.
the Q code also store the type of affected facility and the state of the facility. US encoding for facility types is different.
domestic NOTAMs are using standardized phrases defined in FAA document but not recognized by ICAO standard, the FAA order 7930.2R list them.