@redocly/graphql-docs
Version:
Redocly GraphQL docs
39 lines (38 loc) • 1.24 kB
TypeScript
export interface MenuGroupingConfig {
requireExactGroups: boolean;
groups: MenuGroupConfig[];
otherItemsGroupName: string;
}
export interface MenuGroupConfig {
name: string;
items?: TypeGroupConfig;
queries?: TypeGroupConfig;
mutations?: TypeGroupConfig;
subscriptions?: TypeGroupConfig;
types?: TypeGroupConfig;
directives?: TypeGroupConfig;
}
export interface TypeGroupConfig {
includeByName?: ItemNameSpec[];
excludeByName?: ItemNameSpec[];
}
export type ItemNameSpec = string | RegExp;
export type IndexedMenuGroupingConfig = Omit<MenuGroupingConfig, 'groups'> & {
groups: IndexedMenuGroupConfig[];
};
export type IndexedMenuGroupConfig = Omit<MenuGroupConfig, 'items' | 'queries' | 'mutations' | 'subscriptions' | 'types' | 'directives'> & {
items: IndexedTypeGroupConfig;
queries: IndexedTypeGroupConfig;
mutations: IndexedTypeGroupConfig;
subscriptions: IndexedTypeGroupConfig;
types: IndexedTypeGroupConfig;
directives: IndexedTypeGroupConfig;
};
export interface IndexedTypeGroupConfig {
includeByName: IndexedItemNameSpec;
excludeByName: IndexedItemNameSpec;
}
export interface IndexedItemNameSpec {
names: Set<string>;
regexps: RegExp[];
}