Hi,
In hikashop, you can customize the zones. If you edit the zone corresponding to your country, you should see a list of states. If that doesn't suit your needs you can of course change that list. You can also create new zones.
In the shipping methods options, you can restrict to shipping method to a zone.
If you want to reduce the number of shipping methods you can group the states with the same shipping price under a new zone and restrict one or several shipping methods to that zone.
Then let the user select his state when entering his address and then based on that state, the zone within which that state is, and the zone resitrictions on shipping methods, the shipping methods will be filtered so that your users can only use the shipping methods relevant to their state.
Thus, I think that you could already achieve what you want without even touching the code.
In any case, you can always customize the code and of course, you will be able to access all the address information in the shipping plugin. You can read our developer documentation concerning shipping plugin on that page:
www.hikashop.com/fr/support/documentation/62.html