         }
     }
 
-    func value<T: Transform>(_ index: Int, using transform: T) throws -> T.Object {
+    public func value<T: Transform>(_ index: Int, using transform: T) throws -> T.Object {
         if index >= 0, index < jsonArray?.count ?? 0, let object = jsonArray?[index], let t = transform.transform(input: object) {
             return t
         } else {

        }
    }

    func value<T>(_ key: String) throws -> T {
        if let t = jsonObject?[key] as? T {
            return t
        } else {

    }
}

public class URLTransform: Transform {
    typealias Object = URL

    func transform(input: Any) -> URL? {
