IndexerConfig: {
    apiPort?: number;
    fetcher?: {
        api?: boolean;
        dataPath?: string;
        instanceOffset?: number;
        instances?: number;
    };
    indexer?: {
        dataPath?: string;
        main: {
            apiSchemaPath: string;
            domainPath: string;
        };
        worker: {
            domainPath: string;
            instances?: number;
        };
    };
    parser?: {
        api?: boolean;
        dataPath?: string;
        instanceOffset?: number;
        instances?: number;
        layoutPath?: string;
    };
    projectId: string;
    supportedBlockchains: Blockchain[];
    transport?: TransportType;
    transportConfig?: {
        natsUrl?: string;
        tcpUrls?: string | string[];
    };
}

Configs to initialize the framework.

Type declaration

  • Optional apiPort?: number

    The port which the API will be exposed on.

  • Optional fetcher?: {
        api?: boolean;
        dataPath?: string;
        instanceOffset?: number;
        instances?: number;
    }

    Fetcher service configuration.

    • Optional api?: boolean

      Whether to enable the fetcher API. @todo: (For development purposes only?)

    • Optional dataPath?: string

      Directory to which the fetcher service will write the fetcher state. (@todo: Only state or txn too?)

    • Optional instanceOffset?: number

      Offset subfix in case that other instances where instantiated on a different machine.

    • Optional instances?: number

      How many instances of the fetcher service to create.

  • Optional indexer?: {
        dataPath?: string;
        main: {
            apiSchemaPath: string;
            domainPath: string;
        };
        worker: {
            domainPath: string;
            instances?: number;
        };
    }

    Indexer service configuration.

    • Optional dataPath?: string

      The path to the directory which will be used to store the indexer's data.

    • main: {
          apiSchemaPath: string;
          domainPath: string;
      }

      Singleton instance of the main API service.

      • apiSchemaPath: string

        Path to the main API service class.

      • domainPath: string

        Path to the domain class, which interfaces with the main API service.

    • worker: {
          domainPath: string;
          instances?: number;
      }

      Multiple instances of the worker API service.

      • domainPath: string

        Path to the domain class, which orchestrates the worker API services.

      • Optional instances?: number

        How many instances of the worker API service to create.

  • Optional parser?: {
        api?: boolean;
        dataPath?: string;
        instanceOffset?: number;
        instances?: number;
        layoutPath?: string;
    }

    Parser service configuration.

    • Optional api?: boolean

      Whether to enable the parser API. @todo: (For development purposes only?)

    • Optional dataPath?: string

      Directory to which the parser service will write the parsed data. (@todo: Is this correct?)

    • Optional instanceOffset?: number

      Offset subfix in case that other instances where instantiated on a different machine.

    • Optional instances?: number

      How many instances of the parser service to create.

    • Optional layoutPath?: string

      Directory in which the parser service will receive a custom buffer layouts schema for accounts and instructions

  • projectId: string

    ID which will be used to prefix the services' IDs.

  • supportedBlockchains: Blockchain[]

    Supported blockchains (default: solana)

  • Optional transport?: TransportType

    The transport layer type to use.

  • Optional transportConfig?: {
        natsUrl?: string;
        tcpUrls?: string | string[];
    }

    The transport layer configuration.

    • Optional natsUrl?: string

      Todo

    • Optional tcpUrls?: string | string[]

      Todo

Generated using TypeDoc