import { Subgraph as ISubgraph } from './protocols/subgraph'; import { ManifestZodSchema } from './manifest'; type ResolveFile = (path: string) => string; export default class Subgraph { static validate(data: any, protocol: any, { resolveFile }: { resolveFile: ResolveFile; }): Promise; static validateSchema(manifest: ManifestZodSchema, { resolveFile }: { resolveFile: ResolveFile; }): void; static validateRepository(manifest: ManifestZodSchema): { path: string[]; message: string; }[]; static validateDescription(manifest: ManifestZodSchema): { path: string[]; message: string; }[]; static validateHandlers(manifest: ManifestZodSchema, protocol: any, protocolSubgraph: ISubgraph): any; static validateContractValues(manifest: ManifestZodSchema, protocol: any): any; static validateUniqueDataSourceNames(manifest: ManifestZodSchema): any; static validateUniqueTemplateNames(manifest: ManifestZodSchema): any; static dump(manifest: ManifestZodSchema): string; static load(filename: string, { protocol, skipValidation }?: { protocol?: any; skipValidation?: boolean; }): Promise<{ result: { specVersion: string; schema: { file: string; }; dataSources: { kind: string; name: string; network: string; source: { address: string; abi: string; startBlock?: number | bigint | undefined; }; mapping: { file: string; kind: "ethereum/events"; apiVersion: string; language: "wasm/assemblyscript"; entities: string[]; eventHandlers?: { event: string; handler: string; topic0?: string | undefined; }[] | undefined; callHandlers?: { function: string; handler: string; }[] | undefined; blockHandlers?: { handler: string; filter?: { kind: "call"; } | undefined; }[] | undefined; }; }[]; description?: string | undefined; repository?: string | undefined; graft?: { base: string; block: bigint; } | undefined; templates?: { kind: string; name: string; network: string; source: { abi: string; startBlock?: number | bigint | undefined; }; mapping: { file: string; kind: "ethereum/events"; apiVersion: string; language: "wasm/assemblyscript"; entities: string[]; eventHandlers?: { event: string; handler: string; topic0?: string | undefined; }[] | undefined; callHandlers?: { function: string; handler: string; }[] | undefined; blockHandlers?: { handler: string; filter?: { kind: "call"; } | undefined; }[] | undefined; }; }[] | undefined; }; warning: string | null; }>; static write(manifest: any, filename: string): Promise; } export {};