import { GraphQLResolveInfo } from 'graphql'; export declare type Maybe = T | null; export declare type Exact = { [K in keyof T]: T[K]; }; export declare type RequireFields = { [X in Exclude]?: T[X]; } & { [P in K]-?: NonNullable; }; /** All built-in and custom scalars, mapped to their actual values */ export declare type Scalars = { ID: string; String: string; Boolean: boolean; Int: number; Float: number; }; export declare type Query = { __typename?: 'Query'; /** Get a transaction by its id */ transaction?: Maybe; /** Get a paginated set of matching transactions using filters. */ transactions: TransactionConnection; block?: Maybe; blocks: BlockConnection; }; export declare type QueryTransactionArgs = { id: Scalars['ID']; }; export declare type QueryTransactionsArgs = { ids?: Maybe; owners?: Maybe; recipients?: Maybe; tags?: Maybe; bundledIn?: Maybe; block?: Maybe; first?: Maybe; after?: Maybe; sort?: Maybe; }; export declare type QueryBlockArgs = { id?: Maybe; }; export declare type QueryBlocksArgs = { ids?: Maybe; height?: Maybe; first?: Maybe; after?: Maybe; sort?: Maybe; }; /** Optionally reverse the result sort order from `HEIGHT_DESC` (default) to `HEIGHT_ASC`. */ export declare enum SortOrder { /** Results are sorted by the transaction block height in ascending order, with the oldest transactions appearing first, and the most recent and pending/unconfirmed appearing last. */ HeightAsc = "HEIGHT_ASC", /** Results are sorted by the transaction block height in descending order, with the most recent and unconfirmed/pending transactions appearing first. */ HeightDesc = "HEIGHT_DESC" } /** Find transactions with the folowing tag name and value */ export declare type TagFilter = { /** The tag name */ name: Scalars['String']; /** * An array of values to match against. If multiple values are passed then transactions with _any_ matching tag value from the set will be returned. * * e.g. * * \`{name: "app-name", values: ["app-1"]}\` * * Returns all transactions where the \`app-name\` tag has a value of \`app-1\`. * * \`{name: "app-name", values: ["app-1", "app-2", "app-3"]}\` * * Returns all transactions where the \`app-name\` tag has a value of either \`app-1\` _or_ \`app-2\` _or_ \`app-3\`. */ values: Scalars['String'][]; /** The operator to apply to to the tag filter. Defaults to EQ (equal). */ op?: Maybe; }; /** Find blocks within a given range */ export declare type BlockFilter = { /** Minimum block height to filter from */ min?: Maybe; /** Maximum block height to filter to */ max?: Maybe; }; /** * Paginated result set using the GraphQL cursor spec, * see: https://relay.dev/graphql/connections.htm. */ export declare type BlockConnection = { __typename?: 'BlockConnection'; pageInfo: PageInfo; edges: BlockEdge[]; }; /** Paginated result set using the GraphQL cursor spec. */ export declare type BlockEdge = { __typename?: 'BlockEdge'; /** * The cursor value for fetching the next page. * * Pass this to the \`after\` parameter in \`blocks(after: $cursor)\`, the next page will start from the next item after this. */ cursor: Scalars['String']; /** A block object. */ node: Block; }; /** * Paginated result set using the GraphQL cursor spec, * see: https://relay.dev/graphql/connections.htm. */ export declare type TransactionConnection = { __typename?: 'TransactionConnection'; pageInfo: PageInfo; edges: TransactionEdge[]; }; /** Paginated result set using the GraphQL cursor spec. */ export declare type TransactionEdge = { __typename?: 'TransactionEdge'; /** * The cursor value for fetching the next page. * * Pass this to the \`after\` parameter in \`transactions(after: $cursor)\`, the next page will start from the next item after this. */ cursor: Scalars['String']; /** A transaction object. */ node: Transaction; }; /** Paginated page info using the GraphQL cursor spec. */ export declare type PageInfo = { __typename?: 'PageInfo'; hasNextPage: Scalars['Boolean']; }; export declare type Transaction = { __typename?: 'Transaction'; id: Scalars['ID']; anchor: Scalars['String']; signature: Scalars['String']; recipient: Scalars['String']; owner: Owner; fee: Amount; quantity: Amount; data: MetaData; tags: Tag[]; /** Transactions with a null block are recent and unconfirmed, if they aren't mined into a block within 60 minutes they will be removed from results. */ block?: Maybe; /** * Transactions with parent are Bundled Data Items as defined in the ANS-102 data spec. https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-102.md * @deprecated Use `bundledIn` */ parent?: Maybe; /** * For bundled data items this references the containing bundle ID. * See: https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-102.md */ bundledIn?: Maybe; }; /** * The parent transaction for bundled transactions, * see: https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-102.md. */ export declare type Parent = { __typename?: 'Parent'; id: Scalars['ID']; }; /** * The data bundle containing the current data item. * See: https://github.com/ArweaveTeam/arweave-standards/blob/master/ans/ANS-102.md. */ export declare type Bundle = { __typename?: 'Bundle'; /** ID of the containing data bundle. */ id: Scalars['ID']; }; export declare type Block = { __typename?: 'Block'; /** The block ID. */ id: Scalars['ID']; /** The block timestamp (UTC). */ timestamp: Scalars['Int']; /** The block height. */ height: Scalars['Int']; /** The previous block ID. */ previous: Scalars['ID']; }; /** Basic metadata about the transaction data payload. */ export declare type MetaData = { __typename?: 'MetaData'; /** Size of the associated data in bytes. */ size: Scalars['String']; /** Type is derrived from the \`content-type\` tag on a transaction. */ type?: Maybe; }; /** Representation of a value transfer between wallets, in both winson and ar. */ export declare type Amount = { __typename?: 'Amount'; /** Amount as a winston string e.g. \`"1000000000000"\`. */ winston: Scalars['String']; /** Amount as an AR string e.g. \`"0.000000000001"\`. */ ar: Scalars['String']; }; /** Representation of a transaction owner. */ export declare type Owner = { __typename?: 'Owner'; /** The owner's wallet address. */ address: Scalars['String']; /** The owner's public key as a base64url encoded string. */ key: Scalars['String']; }; export declare type Tag = { __typename?: 'Tag'; /** UTF-8 tag name */ name: Scalars['String']; /** UTF-8 tag value */ value: Scalars['String']; }; /** The operator to apply to a tag value. */ export declare enum TagOperator { /** Equal */ Eq = "EQ", /** Not equal */ Neq = "NEQ" } export declare type ResolverTypeWrapper = Promise | T; export declare type LegacyStitchingResolver = { fragment: string; resolve: ResolverFn; }; export declare type NewStitchingResolver = { selectionSet: string; resolve: ResolverFn; }; export declare type StitchingResolver = LegacyStitchingResolver | NewStitchingResolver; export declare type Resolver = ResolverFn | StitchingResolver; export declare type ResolverFn = (parent: TParent, args: TArgs, context: TContext, info: GraphQLResolveInfo) => Promise | TResult; export declare type SubscriptionSubscribeFn = (parent: TParent, args: TArgs, context: TContext, info: GraphQLResolveInfo) => AsyncIterator | Promise>; export declare type SubscriptionResolveFn = (parent: TParent, args: TArgs, context: TContext, info: GraphQLResolveInfo) => TResult | Promise; export interface SubscriptionSubscriberObject { subscribe: SubscriptionSubscribeFn<{ [key in TKey]: TResult; }, TParent, TContext, TArgs>; resolve?: SubscriptionResolveFn; } export interface SubscriptionResolverObject { subscribe: SubscriptionSubscribeFn; resolve: SubscriptionResolveFn; } export declare type SubscriptionObject = SubscriptionSubscriberObject | SubscriptionResolverObject; export declare type SubscriptionResolver = ((...args: any[]) => SubscriptionObject) | SubscriptionObject; export declare type TypeResolveFn = (parent: TParent, context: TContext, info: GraphQLResolveInfo) => Maybe | Promise>; export declare type IsTypeOfResolverFn = (obj: T, info: GraphQLResolveInfo) => boolean | Promise; export declare type NextResolverFn = () => Promise; export declare type DirectiveResolverFn = (next: NextResolverFn, parent: TParent, args: TArgs, context: TContext, info: GraphQLResolveInfo) => TResult | Promise; /** Mapping between all available schema types and the resolvers types */ export declare type ResolversTypes = { Query: ResolverTypeWrapper<{}>; ID: ResolverTypeWrapper; String: ResolverTypeWrapper; Int: ResolverTypeWrapper; SortOrder: SortOrder; TagFilter: TagFilter; BlockFilter: BlockFilter; BlockConnection: ResolverTypeWrapper; BlockEdge: ResolverTypeWrapper; TransactionConnection: ResolverTypeWrapper; TransactionEdge: ResolverTypeWrapper; PageInfo: ResolverTypeWrapper; Boolean: ResolverTypeWrapper; Transaction: ResolverTypeWrapper; Parent: ResolverTypeWrapper; Bundle: ResolverTypeWrapper; Block: ResolverTypeWrapper; MetaData: ResolverTypeWrapper; Amount: ResolverTypeWrapper; Owner: ResolverTypeWrapper; Tag: ResolverTypeWrapper; TagOperator: TagOperator; }; /** Mapping between all available schema types and the resolvers parents */ export declare type ResolversParentTypes = { Query: {}; ID: Scalars['ID']; String: Scalars['String']; Int: Scalars['Int']; TagFilter: TagFilter; BlockFilter: BlockFilter; BlockConnection: BlockConnection; BlockEdge: BlockEdge; TransactionConnection: TransactionConnection; TransactionEdge: TransactionEdge; PageInfo: PageInfo; Boolean: Scalars['Boolean']; Transaction: Transaction; Parent: Parent; Bundle: Bundle; Block: Block; MetaData: MetaData; Amount: Amount; Owner: Owner; Tag: Tag; }; export declare type QueryResolvers = { transaction?: Resolver, ParentType, ContextType, RequireFields>; transactions?: Resolver>; block?: Resolver, ParentType, ContextType, RequireFields>; blocks?: Resolver>; }; export declare type BlockConnectionResolvers = { pageInfo?: Resolver; edges?: Resolver; __isTypeOf?: IsTypeOfResolverFn; }; export declare type BlockEdgeResolvers = { cursor?: Resolver; node?: Resolver; __isTypeOf?: IsTypeOfResolverFn; }; export declare type TransactionConnectionResolvers = { pageInfo?: Resolver; edges?: Resolver; __isTypeOf?: IsTypeOfResolverFn; }; export declare type TransactionEdgeResolvers = { cursor?: Resolver; node?: Resolver; __isTypeOf?: IsTypeOfResolverFn; }; export declare type PageInfoResolvers = { hasNextPage?: Resolver; __isTypeOf?: IsTypeOfResolverFn; }; export declare type TransactionResolvers = { id?: Resolver; anchor?: Resolver; signature?: Resolver; recipient?: Resolver; owner?: Resolver; fee?: Resolver; quantity?: Resolver; data?: Resolver; tags?: Resolver; block?: Resolver, ParentType, ContextType>; parent?: Resolver, ParentType, ContextType>; bundledIn?: Resolver, ParentType, ContextType>; __isTypeOf?: IsTypeOfResolverFn; }; export declare type ParentResolvers = { id?: Resolver; __isTypeOf?: IsTypeOfResolverFn; }; export declare type BundleResolvers = { id?: Resolver; __isTypeOf?: IsTypeOfResolverFn; }; export declare type BlockResolvers = { id?: Resolver; timestamp?: Resolver; height?: Resolver; previous?: Resolver; __isTypeOf?: IsTypeOfResolverFn; }; export declare type MetaDataResolvers = { size?: Resolver; type?: Resolver, ParentType, ContextType>; __isTypeOf?: IsTypeOfResolverFn; }; export declare type AmountResolvers = { winston?: Resolver; ar?: Resolver; __isTypeOf?: IsTypeOfResolverFn; }; export declare type OwnerResolvers = { address?: Resolver; key?: Resolver; __isTypeOf?: IsTypeOfResolverFn; }; export declare type TagResolvers = { name?: Resolver; value?: Resolver; __isTypeOf?: IsTypeOfResolverFn; }; export declare type Resolvers = { Query?: QueryResolvers; BlockConnection?: BlockConnectionResolvers; BlockEdge?: BlockEdgeResolvers; TransactionConnection?: TransactionConnectionResolvers; TransactionEdge?: TransactionEdgeResolvers; PageInfo?: PageInfoResolvers; Transaction?: TransactionResolvers; Parent?: ParentResolvers; Bundle?: BundleResolvers; Block?: BlockResolvers; MetaData?: MetaDataResolvers; Amount?: AmountResolvers; Owner?: OwnerResolvers; Tag?: TagResolvers; }; /** * @deprecated * Use "Resolvers" root object instead. If you wish to get "IResolvers", add "typesPrefix: I" to your config. */ export declare type IResolvers = Resolvers;