# Function process

- process<I, O>(inputs): Generator<GraphQlRequest | Web3Request, {
  compiler: { name: string | undefined; version: string | undefined; };
  contracts: (I & O)[];
  db: { compilation: { compiler: never; sources: never; processedSources: never; sourceMaps: never; contracts: never; immutableReferences: never; id: string; type: never; } | { id: string; sources: never; compiler: never; processedSources: never; sourceMaps: never; immutableReferences: never; }; };
  sourceIndexes: string[];
  sources: ({ sourcePath: string; contents: string; ast?: object | undefined; legacyAST?: object | undefined; language: string; })[];
  }[], any>

- #### Type Parameters

  - #### I extends Project.LoadCompile.Batch.Contract<{
    compilation: {
    db: {
    compilation: Resources.IdObject<"compilations">;
    };
    };
    contract: {
    abi: any;
    contractName: string;
    db: {
    callBytecode: Resources.IdObject<"bytecodes">;
    createBytecode: Resources.IdObject<"bytecodes">;
    };
    deployedGeneratedSources?: {
    ast: any;
    contents: string;
    id: number;
    language: string;
    name: string;
    }[];
    generatedSources?: {
    ast: any;
    contents: string;
    id: number;
    language: string;
    name: string;
    }[];
    sourcePath: string;
    };
    entry: ContractInput;
    resources: {
    contract: undefined | Resources.IdObject<"contracts">;
    };
    result: undefined | Resources.IdObject<"contracts">;
    source: {};
    }>

  - #### O extends CompiledContract & {
    abi: any;
    contractName: string;
    db: {
    callBytecode: Resources.IdObject<"bytecodes">;
    createBytecode: Resources.IdObject<"bytecodes">;
    };
    deployedGeneratedSources?: {
    ast: any;
    contents: string;
    id: number;
    language: string;
    name: string;
    }[];
    generatedSources?: {
    ast: any;
    contents: string;
    id: number;
    language: string;
    name: string;
    }[];
    sourcePath: string;
    } & {
    db: {
    contract: undefined | Resources.IdObject<"contracts">;
    };
    }

  #### Parameters

  - ##### inputs: {
    compiler: { name: string | undefined; version: string | undefined; };
    contracts: I[];
    db: { compilation: { compiler: never; sources: never; processedSources: never; sourceMaps: never; contracts: never; immutableReferences: never; id: string; type: never; } | { id: string; sources: never; compiler: never; processedSources: never; sourceMaps: never; immutableReferences: never; }; };
    sourceIndexes: string[];
    sources: ({ sourcePath: string; contents: string; ast?: object | undefined; legacyAST?: object | undefined; language: string; })[];
    }[]

  #### Returns Generator<GraphQlRequest | Web3Request, {
  compiler: { name: string | undefined; version: string | undefined; };
  contracts: (I & O)[];
  db: { compilation: { compiler: never; sources: never; processedSources: never; sourceMaps: never; contracts: never; immutableReferences: never; id: string; type: never; } | { id: string; sources: never; compiler: never; processedSources: never; sourceMaps: never; immutableReferences: never; }; };
  sourceIndexes: string[];
  sources: ({ sourcePath: string; contents: string; ast?: object | undefined; legacyAST?: object | undefined; language: string; })[];
  }[], any>

  - Defined in packages/db/src/project/loadCompile/batch.ts:135

Generated using TypeDoc