1 | import { ModelQuery, ModelMutation } from './AuthRule';
|
2 | import { DirectiveNode, ObjectTypeDefinitionNode } from 'graphql';
|
3 | export interface QueryNameMap {
|
4 | get?: string;
|
5 | list?: string;
|
6 | query?: string;
|
7 | }
|
8 | export interface MutationNameMap {
|
9 | create?: string;
|
10 | update?: string;
|
11 | delete?: string;
|
12 | }
|
13 | export declare type ModelSubscriptionLevel = 'off' | 'public' | 'on';
|
14 | export interface SubscriptionNameMap {
|
15 | onCreate?: string[];
|
16 | onUpdate?: string[];
|
17 | onDelete?: string[];
|
18 | level?: ModelSubscriptionLevel;
|
19 | }
|
20 | export interface ModelDirectiveArgs {
|
21 | queries?: QueryNameMap;
|
22 | mutations?: MutationNameMap;
|
23 | subscriptions?: SubscriptionNameMap;
|
24 | }
|
25 | export declare type ModelDirectiveOperationType = ModelQuery | ModelMutation | 'onCreate' | 'onUpdate' | 'onDelete' | 'level';
|
26 | declare type ModelDirectiveOperation = {
|
27 | shouldHave: boolean;
|
28 | name?: string;
|
29 | names?: string[];
|
30 | };
|
31 | export declare class ModelDirectiveConfiguration {
|
32 | map: Map<ModelDirectiveOperationType, ModelDirectiveOperation>;
|
33 | constructor(directive: DirectiveNode, def: ObjectTypeDefinitionNode);
|
34 | shouldHave(op: ModelDirectiveOperationType): boolean;
|
35 | getName(op: ModelDirectiveOperationType): string | undefined;
|
36 | getNames(op: ModelDirectiveOperationType): string[] | undefined;
|
37 | }
|
38 | export {};
|
39 |
|
\ | No newline at end of file |