can we create our own custom tilebase?

I am trying to make some kind of tileset texture replacer using editor window. The step is first, i try to save all tile and texture name in let say "scenename.ctss" (ctss stand for "custom tilemap save system"), and then load but with different texture. but the problem is i don’t find it anywhere on the internet on how we can create tilebase, and then apply texture to it.

i was expecting creating tilebase would be as simple as this line of code:

TileBase tileBase = new TileBase(); 

but i get this error message:

CS0144: Cannot create an instance of the abstract type or interface 'TileBase' 

is there a way so that we can create our own custom tilebase in unity?