 	
 	:returns: A future that resolves to the fetched resource.
 	*/
-	public func findOne<T: Resource>(ID: String, ofType type: T.Type) -> Future<(resource: T, meta: [String: AnyObject]?, jsonapi: [String: AnyObject]?), NSError> {
+	public func findOne<T: Resource>(ID: String, ofType type: T.Type) -> Future<(resource: T, meta: Metadata?, jsonapi: JSONAPIData?), NSError> {
 		let query = Query(resourceType: type, resourceIDs: [ID])
 		return findOne(query)
 	}

	
	:returns: A future that resolves to the fetched resource.
	*/
	public func findOne<T: Resource>(query: Query<T>) -> Future<(resource: T, meta: [String: AnyObject]?, jsonapi: [String: AnyObject]?), NSError> {
		let promise = Promise<(resource: T, meta: [String: AnyObject]?, jsonapi: [String: AnyObject]?), NSError>()
		
		let operation = FetchOperation(query: query, spine: self)
		

import Foundation
import BrightFutures

public typealias Metadata = [String: AnyObject]
public typealias JSONAPIData = [String: AnyObject]


/// The main class
public class Spine {
	
