import { useQuery, UseQueryOptions } from 'react-query'; import { fetcher } from './fetcher'; export type Maybe = T | null; export type InputMaybe = Maybe; export type Exact = { [K in keyof T]: T[K] }; export type MakeOptional = Omit & { [SubKey in K]?: Maybe }; export type MakeMaybe = Omit & { [SubKey in K]: Maybe }; /** All built-in and custom scalars, mapped to their actual values */ export type Scalars = { ID: string; String: string; Boolean: boolean; Int: number; Float: number; /** The 'Long' scalar type represents non-fractional signed whole numeric values. Long can represent values between -(2^64) and 2^64 - 1. */ Long: any; }; /** Authentication requires either a valid mail+password combination or a jwt obtained by an earlier login. */ export type Auth = { /** Self descriptive. */ jwt: Scalars['String']; /** Self descriptive. */ mail: Scalars['String']; /** Self descriptive. */ password: Scalars['String']; }; /** If this server supports mutation, the type that mutation operations will be rooted at. */ export type MutationType = { __typename?: 'MutationType'; write_rw?: Maybe; }; /** If this server supports mutation, the type that mutation operations will be rooted at. */ export type MutationTypeWrite_RwArgs = { auth: Auth; onEditCompleteByType: OnEditCompleteByType; }; /** https://reactdatagrid.io/docs/api-reference#props-onEditComplete */ export type OnEditCompleteByType = { /** Self descriptive. */ columnId: Scalars['String']; /** Self descriptive. */ rowId: Scalars['String']; value_boolean?: InputMaybe; value_string?: InputMaybe; }; /** The type that query operations will be rooted at. */ export type QueryType = { __typename?: 'QueryType'; /** Export an encrypted database dump */ export?: Maybe; /** The offers that are visible for the ngo, belonging to the login */ get_offers?: Maybe>; get_rw?: Maybe>; /** For a username+password get a jwt containing the login:id */ login: Login; }; /** The type that query operations will be rooted at. */ export type QueryTypeExportArgs = { password: Scalars['String']; }; /** The type that query operations will be rooted at. */ export type QueryTypeGet_OffersArgs = { auth: Auth; }; /** The type that query operations will be rooted at. */ export type QueryTypeGet_RwArgs = { auth: Auth; }; /** The type that query operations will be rooted at. */ export type QueryTypeLoginArgs = { auth: Auth; }; /** Export an encrypted database dump */ export type Export = { __typename?: 'export'; err?: Maybe; /** Self descriptive. */ exit: Scalars['Int']; out?: Maybe; }; /** The offers that are visible for the ngo, belonging to the login */ export type Get_Offers = { __typename?: 'get_offers'; accessible?: Maybe; animals_allowed?: Maybe; animals_present?: Maybe; beds?: Maybe; contact_email?: Maybe; contact_name_full?: Maybe; contact_phone?: Maybe; id?: Maybe; languages?: Maybe>; note?: Maybe; place_city?: Maybe; place_country?: Maybe; place_lat?: Maybe; place_lon?: Maybe; place_street?: Maybe; place_street_number?: Maybe; place_zip?: Maybe; time_duration_str?: Maybe; time_from_str?: Maybe; }; export type Get_Rw = { __typename?: 'get_rw'; /** Self descriptive. */ id: Scalars['String']; rw_contact_replied?: Maybe; rw_contacted?: Maybe; rw_note?: Maybe; rw_offer_occupied?: Maybe; }; /** For a username+password get a jwt containing the login:id */ export type Login = { __typename?: 'login'; jwt?: Maybe; }; export type LoginQueryVariables = Exact<{ auth: Auth; }>; export type LoginQuery = { __typename?: 'QueryType', login: { __typename?: 'login', jwt?: string | null } }; export type GetOffersQueryVariables = Exact<{ auth: Auth; }>; export type GetOffersQuery = { __typename?: 'QueryType', get_offers?: Array<{ __typename?: 'get_offers', id?: string | null, time_from_str?: string | null, time_duration_str?: string | null, beds?: number | null, languages?: Array | null, place_country?: string | null, place_city?: string | null, place_zip?: string | null, place_street?: string | null, place_street_number?: string | null, place_lon?: number | null, place_lat?: number | null, accessible?: boolean | null, animals_allowed?: boolean | null, animals_present?: boolean | null, contact_name_full?: string | null, contact_phone?: string | null, contact_email?: string | null, note?: string | null }> | null }; export type GetRwQueryVariables = Exact<{ auth: Auth; }>; export type GetRwQuery = { __typename?: 'QueryType', get_rw?: Array<{ __typename?: 'get_rw', id: string, rw_contacted?: string | null, rw_contact_replied?: string | null, rw_offer_occupied?: string | null, rw_note?: string | null }> | null }; export const LoginDocument = ` query Login($auth: Auth!) { login(auth: $auth) { jwt } } `; export const useLoginQuery = < TData = LoginQuery, TError = unknown >( variables: LoginQueryVariables, options?: UseQueryOptions ) => useQuery( ['Login', variables], fetcher(LoginDocument, variables), options ); export const GetOffersDocument = ` query GetOffers($auth: Auth!) { get_offers(auth: $auth) { id time_from_str time_duration_str beds languages place_country place_city place_zip place_street place_street_number place_lon place_lat accessible animals_allowed animals_present contact_name_full contact_phone contact_email note } } `; export const useGetOffersQuery = < TData = GetOffersQuery, TError = unknown >( variables: GetOffersQueryVariables, options?: UseQueryOptions ) => useQuery( ['GetOffers', variables], fetcher(GetOffersDocument, variables), options ); export const GetRwDocument = ` query GetRw($auth: Auth!) { get_rw(auth: $auth) { id rw_contacted rw_contact_replied rw_offer_occupied rw_note } } `; export const useGetRwQuery = < TData = GetRwQuery, TError = unknown >( variables: GetRwQueryVariables, options?: UseQueryOptions ) => useQuery( ['GetRw', variables], fetcher(GetRwDocument, variables), options );