import { NodeDefinition, OperationName, OperationProperties, OperationType, SerializedOperationProperties } from '../types/graph'; import { ShapeFields } from '../types/matchers'; import './graph-hash'; import './graph-types'; export interface OperationDefinition

{ shape?: ShapeFields

; cacheable?: boolean; serialize?: false | ((value: P, serialize: (value: NodeDefinition) => T) => S); deserialize?: false | ((value: S, deserialize: (value: T) => NodeDefinition) => P); } export declare function createOperationType(name: T): OperationType; export declare function createOperationType(name: T, definition: OperationDefinition): OperationType;