T? getInitialState<T>(String id, {Codec<T, dynamic>? codec}) { var data = getRawState(id); return data == null || codec == null ? data : codec.decode(data); }