api-core
Version:
Model-based dynamic multi-level APIs for any provider, plus multiple consumption channels
51 lines (50 loc) • 2.4 kB
TypeScript
import { ApiEdgeDefinition } from "../edge/ApiEdgeDefinition";
import { ApiEdgeAction } from "../edge/ApiEdgeAction";
import { Api } from "../Api";
import { ApiEdgeMethod } from "../edge/ApiEdgeMethod";
import { ApiEdgeRelation } from "../relations/ApiEdgeRelation";
import { ApiEdgeSchema } from "../edge/ApiEdgeSchema";
import { ApiEdgeQueryContext } from "../edge/ApiEdgeQueryContext";
export declare class LazyApiEdge implements ApiEdgeDefinition {
private realEdge;
private readonly resolver;
constructor(api: Api, name: string, plural: boolean, resolver: () => Promise<ApiEdgeDefinition | undefined>);
resolve(): Promise<boolean>;
actions: ApiEdgeAction[];
methods: ApiEdgeMethod[];
relations: ApiEdgeRelation[];
get allowCreate(): boolean;
set allowCreate(value: boolean);
get allowExists(): boolean;
set allowExists(value: boolean);
get allowGet(): boolean;
set allowGet(value: boolean);
get allowList(): boolean;
set allowList(value: boolean);
get allowPatch(): boolean;
set allowPatch(value: boolean);
get allowRemove(): boolean;
set allowRemove(value: boolean);
get allowUpdate(): boolean;
set allowUpdate(value: boolean);
get idField(): string;
set idField(value: string);
get schema(): ApiEdgeSchema;
set schema(value: ApiEdgeSchema);
api: Api;
external: boolean;
name: string;
pluralName: string;
createEntry: (context: ApiEdgeQueryContext, entryFields: any) => Promise<import("../..").ApiEdgeQueryResponse>;
exists: (context: ApiEdgeQueryContext) => Promise<import("../..").ApiEdgeQueryResponse>;
getEntry: (context: ApiEdgeQueryContext) => Promise<import("../..").ApiEdgeQueryResponse>;
listEntries: (context: ApiEdgeQueryContext) => Promise<import("../..").ApiEdgeQueryResponse>;
patchEntry: (context: ApiEdgeQueryContext, entryFields: any) => Promise<import("../..").ApiEdgeQueryResponse>;
relation: (name: string) => Promise<ApiEdgeRelation | undefined>;
removeEntry: (context: ApiEdgeQueryContext, entryFields: any) => Promise<import("../..").ApiEdgeQueryResponse>;
updateEntry: (context: ApiEdgeQueryContext, entryFields: any) => Promise<import("../..").ApiEdgeQueryResponse>;
prepare: () => Promise<void>;
metadata: () => import("../..").ApiEdgeMetadata;
get(key: string): any;
set(key: string, value: any): any;
}