<commit_before>/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 *
 * @emails oncall+relay
 * @flow strict-local
 * @format
 */

'use strict';

import type {JSResourceReference} from 'JSResourceReference';
import type {AbstractComponent, ElementConfig} from 'React';
import type {
  ConcreteRequest,
  GraphQLResponse,
  IEnvironment,
  Observable,
  OperationType,
  RequestParameters,
} from 'relay-runtime';

export type PreloadFetchPolicy =
  | 'store-or-network'
  | 'store-and-network'
  | 'network-only';

export type PreloadOptions = {|
  +fetchKey?: string | number,
  +fetchPolicy?: ?PreloadFetchPolicy,
|};

// Note: the phantom type parameter here helps ensures that the
// $Parameters.js value matches the type param provided to preloadQuery.
// eslint-disable-next-line no-unused-vars
export type PreloadableConcreteRequest<TQuery: OperationType> = {|
  getModuleIfRequired: () => ConcreteRequest | null,
  params: RequestParameters,
|};

export type EnvironmentProviderOptions = {
  [string]: mixed,
};<commit_msg>Allow an extraOptions object on PreloadOptions.<commit_after>/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 *
 * @emails oncall+relay
 * @flow strict-local
 * @format
 */

'use strict';

import type {JSResourceReference} from 'JSResourceReference';
import type {AbstractComponent, ElementConfig} from 'React';
import type {
  ConcreteRequest,
  GraphQLResponse,
  IEnvironment,
  Observable,
  OperationType,
  RequestParameters,
} from 'relay-runtime';

export type PreloadFetchPolicy =
  | 'store-or-network'
  | 'store-and-network'
  | 'network-only';

export type PreloadOptions = {|
  +fetchKey?: string | number,
  +fetchPolicy?: ?PreloadFetchPolicy,
  +extraOptions?: ?{},
|};

// Note: the phantom type parameter here helps ensures that the
// $Parameters.js value matches the type param provided to preloadQuery.
// eslint-disable-next-line no-unused-vars
export type PreloadableConcreteRequest<TQuery: OperationType> = {|
  getModuleIfRequired: () => ConcreteRequest | null,
  params: RequestParameters,
|};

export type EnvironmentProviderOptions = {
  [string]: mixed,
};
{'fraction_non_alphanumeric': 0.10892333472978634, 'fraction_numerical': 0.0, 'mean_word_length': 4.672209026128266, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1211097', 'n_tokens_mistral': 693, 'n_tokens_neox': 694, 'n_words': 220}