DefinitelyTyped/react-relay/react-relay.d.ts
Yui 2ef5e43345 [Types-2.0] Merge master 07/29 round2 (#10372)
* Including typings for globalize-compiler.

* Updating typings for globalize-compiler to use the correct AST type.

* Changed AtomicBlockUtils and KeyBindingUtil from interfaces to classes with static functions (#10324)

* Fixing a few minor issues in webpack-stream. (#10253)

* Document changes in 0.28 and 0.29 in React Native (#10309)

* RN: Widen limit of refreshControl

* RN: Update NavigationExperimental to 0.28

* RN: Define new method from 0.28

* RN: Promisify requestPermissions per 0.28

* RN: Remove onNavigate method

See: fb0007d853 (diff-04c37ff76f85aea35e8475617539b75fR94)

* RN: Add onNavigateBack method

See: fb0007d853 (diff-04c37ff76f85aea35e8475617539b75fR94)

* RN: Deprecate StatusBarIOS

* RN: Update StyleSheet API per 0.29

* RN: Define KeyboardAvoidingView added in 0.29

* RN: Define saveToCameraRoll added in 0.29

* RN: Define cancellable from InteractionManager

* RN: Add new possible values of flexDirection

* RN: Define lineBreakMode

* RN: Allow zIndex prop

* RN: Allow dimension limits

* RN: Specify type of refreshControl

* RN: Mark properties as optional

* RN: Clarify parameter naming

* RN: Mark optional property as optional

* RN: Definite explicit ref type

* RN: Restore StyleSheet.create to restore compatibility

* Added Headers constructor options to whatwg-fetch (#10313)

* Impl: Updated definitions for oracledb (#10323)

* Update select2 to have selectOnClose option (#10326)

Option documented at https://select2.github.io/options.html#can-i-select-the-highlighted-result-when-the-dropdown-is-closed

* Added definition for react-file-input React component (#10325)

* Added definition for react-file-input React component

* Added newline at end of file

* Added definitions for the react-file-reader-input react component. (#10327)

* Sleep (#10333)

* Add Electron specific versions to process.versions (#10320)

* Fix uuid.js definitions. (#10318)

* protobufjs: updated Message interfaces (#10198)

* protobufjs: updated Message interfaces

* Added ProtoBuf.Util interface

* Fixed load functions of ProtoBuf namespace

Base on the protobuf.js API docmentation.

* use {} instead of Object

Fixed according to PR commit note.

* Multiple minor fixes (#10339)

* better typing of onShouldStartLoadWithRequest in WebViewPropertiesIOS

* Fixes to WebViewProperties

* Missing methods in Navigator

* Fix of Platform.select()

* added support for interfacing with native-modules

* added support for interfacing with native-modules

* added dev variable

* Update to header notes

* Examples: alternative styles declaration

* webcomponents.js: Add typings for Element.createShadowRoot (#10330)

* webcomponents.js: Add typings for Element.createShadowRoot

createShadowRoot is deprecated in the official Shadow DOM spec,
but is the way to attach a shadow root in the current released
version of webcomponents.js.

* webcomponents.js: remove spurious extra line

* webcomponents.js: remove readonly modifier

Not supported until TS2.

* webcomponents.js: add Element.shadowRoot property

* Adding a couple missing highcharts properites (#10340)

* Adding a couple missing highcharts properites

* Fixing indentation

* Indentation

* Update to Electron 1.3.1 (#10336)

* Update to Electron 1.3.1

* Update editing command docs

* Fix argument types

* add definition of js-priority-queue (#10347)

* Update to v1.13.0 and bug fix: sanitize-html expects tag attributes to be called attribs. (#10360)

* updated vue-resource (#10349)

* Updated to match docs for version 0.9.3 (latest as of 07/19/16)

This is very important because response.data now returns raw data instead of a json object, you need to use res.json() to get an object representation of the response. .json() was missing from the typings.

Aditionally modified a few breaking changes to match the documentation at:  https://github.com/vuejs/vue-resource/blob/master/docs/http.md

* Added tests for json, blob, and text

* fixed version number

* Added basic type definitions for react-relay (#10353)

* Added basic type definitions for react-relay

* Fixed tests

* fix formatting

* Fix application insights JS module initialization (#10364)

* Added new type definition for gulp-help-doc (#10366)

* Added gulp-help-doc definitions

* Fixed declaration and tests

* Fixed declaration and tests

* Definition fixed

* Declaration fixed

* added LogisticRegressionClassifier definitions (#10307)

* Add definitions for utf8 module (#10329)

* added utf8 module typings

added utf8 module typings

* added tests for utf8

added tests for utf8

* moved import to es6 compatible

moved import to es6 compatible

* updated var to const

updated var to const

* removed interface and moved into module

removed interface and moved into module

* update const with let as it can be changed

update const with let as it can be changed
2016-07-30 05:06:40 -07:00

113 lines
3.3 KiB
TypeScript

// Type definitions for react-relay 0.9.2
// Project: https://github.com/facebook/relay
// Definitions by: Johannes Schickling <https://github.com/graphcool>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
/// <reference path="../react/react.d.ts"/>
declare module "react-relay" {
import * as React from "react";
/** Fragments are a hash of functions */
interface Fragments {
[query: string]: ((variables?: RelayVariables) => string)
}
interface CreateContainerOpts {
initialVariables?: Object
fragments: Fragments
prepareVariables?(prevVariables: RelayVariables): RelayVariables
}
interface RelayVariables {
[name: string]: any
}
/** add static getFragment method to the component constructor */
interface RelayContainerClass<T> extends React.ComponentClass<T> {
getFragment: ((q: string) => string)
}
interface RelayQueryRequestResolve {
response: any
}
interface RelayMutationRequest {
getQueryString(): string
getVariables(): RelayVariables
resolve(result: RelayQueryRequestResolve): any
reject(errors: any): any
}
interface RelayQueryRequest {
resolve(result: RelayQueryRequestResolve): any
reject(errors: any): any
getQueryString(): string
getVariables(): RelayVariables
getID(): string
getDebugName(): string
}
interface RelayNetworkLayer {
supports(...options: string[]): boolean
}
class DefaultNetworkLayer implements RelayNetworkLayer {
constructor(host: string, options: any)
supports(...options: string[]): boolean
}
function createContainer<T>(component: React.ComponentClass<T>, params?: CreateContainerOpts): RelayContainerClass<any>
function injectNetworkLayer(networkLayer: RelayNetworkLayer): any
function isContainer(component: React.ComponentClass<any>): boolean
function QL(...args: any[]): string
class Route {
constructor(params?: RelayVariables)
}
/**
* Relay Mutation class, where T are the props it takes and S is the returned payload from Relay.Store.update.
* S is typically dynamic as it depends on the data the app is currently using, but it's possible to always
* return some data in the payload using REQUIRED_CHILDREN which is where specifying S is the most useful.
*/
class Mutation<T,S> {
props: T
constructor(props: T)
static getFragment(q: string): string
}
interface Transaction {
getError(): Error
Status(): number
}
interface StoreUpdateCallbacks<T> {
onFailure?(transaction: Transaction): any
onSuccess?(response: T): any
}
interface Store {
commitUpdate(mutation: Mutation<any,any>, callbacks?: StoreUpdateCallbacks<any>): any
}
var Store: Store
class RootContainer extends React.Component<RootContainerProps,any> {}
interface RootContainerProps extends React.Props<RootContainer>{
Component: RelayContainerClass<any>
route: Route
renderLoading?(): JSX.Element
renderFetched?(data: any): JSX.Element
renderFailure?(error: Error, retry: Function): JSX.Element
}
interface RelayProp {
variables: any
setVariables(variables: Object): void
}
}