how to create a data type and make it available in all Databases?
There is no way to do that with table types. You will need to replicate that in all databases. But, if you want this table type available while creating a new database, you can just add it in the model database. 
There are a couple restrictions to using table-valued parameters. You can't even use table-valued parameters across databases. Check some details here.