import { BaseGeneratedListTypes, CreateListItemAccessControl, FieldAccessControl, IndividualFieldAccessControl, ListAccessControl, DeleteListItemAccessControl, FieldCreateItemAccessArgs, FieldReadItemAccessArgs, FieldUpdateItemAccessArgs, UpdateListItemAccessControl, ListOperationAccessControl, ListFilterAccessControl, KeystoneContext } from '../../types'; import { InitialisedList } from './types-for-lists'; import { InputFilter } from './where-inputs'; export declare function getOperationAccess(list: InitialisedList, context: KeystoneContext, operation: 'delete' | 'create' | 'update' | 'query'): Promise; export declare function getAccessFilters(list: InitialisedList, context: KeystoneContext, operation: 'update' | 'query' | 'delete'): Promise; export declare function parseFieldAccessControl(access: FieldAccessControl | undefined): ResolvedFieldAccessControl; export declare type ResolvedFieldAccessControl = { read: IndividualFieldAccessControl>; create: IndividualFieldAccessControl>; update: IndividualFieldAccessControl>; }; export declare function parseListAccessControl(access: ListAccessControl | undefined): ResolvedListAccessControl; export declare type ResolvedListAccessControl = { operation: { create: ListOperationAccessControl<'create'>; query: ListOperationAccessControl<'query'>; update: ListOperationAccessControl<'update'>; delete: ListOperationAccessControl<'delete'>; }; filter: { query: ListFilterAccessControl<'query', BaseGeneratedListTypes>; update: ListFilterAccessControl<'update', BaseGeneratedListTypes>; delete: ListFilterAccessControl<'delete', BaseGeneratedListTypes>; }; item: { create: CreateListItemAccessControl; update: UpdateListItemAccessControl; delete: DeleteListItemAccessControl; }; };