Minecraft wiki entry for Argument_types, associated text: block, block_marker, and falling_dust has a parameter in block_id[block_state=foo] format to specify a block, in which block states can be omitted when unneeded. For example: /particle block minecraft:grass_block[snowy=true]
dust requires three color channel parameters to be set along with the name, representing red, green, and blue, each being a value in the range 0 to 1; and an additional parameter representing size. For example: /particle dust 1.0 0.5 0.5 1.0 creates a pink particle at regular size. If one or more values are greater than 1, the particles change their colors. The greater the values the greater is the range of different colors.
dust_color_transition requires three color channel parameters like dust representing the start color, a number parameter representing size, and another three color channel parameters representing the end color. For example: /particle dust_color_transition 1.0 0.0 0.0 1.0 0.0 0.0 1.0 creates a particle transitioning from red to blue at regular size.
item requires an item as a parameter in the format of item_id{NBT}, in which NBT can be omitted when unneeded. It appears, however, that NBT values do not change anything in how the particle looks. For example: /particle item minecraft:apple
sculk_charge requires a float parameter specifying the angle the particle displays at in radians.
shriek requires an int parameter specifying the delay in ticks. For example: /particle shriek 100 creates a shriek particle that doesn't show up until 100 game ticks (5 seconds) in.
vibration requires a position parameter representing the destination, and an integer parameter representing the duration of the move. For example: /particle vibration 5.0 64.0 0.0 200 creates a particle taking 200 ticks moving from the current position to 5.0 64.0 0.0.