import { Config, EnumMetadata, ForeignKeyMetadata, HasuraMetadata, HasuraTableMetadata, TableMetadata } from "./interfaces"; import { HasuraClient } from "./HasuraClient"; export declare class HasuraMetadataManager { config: Config; client: HasuraClient; hasuraMetadata: HasuraMetadata; tableMetadata: TableMetadata[]; enumMetadata: EnumMetadata[]; private foreignKeysCache; constructor(config: Config); build(): Promise; protected testTable(tableName: string): boolean; protected fetchMetadata(): Promise; protected getHasuraTable(name: string): HasuraTableMetadata; protected getHasuraArrayRelation(tableName: string, reverseTableName: string): import("./interfaces").HasuraArrayRelationMetadata; protected getTable(name: string): TableMetadata; protected getHasuraTableNames(): string[]; protected createRelations(): Promise; protected createTablesMetadata(): Promise; protected getForeignKey(tableName: string, column: string): Promise; protected getForeignKeys(tableName: string): Promise; }