UNPKG

parse-server-schema-manager

Version:
47 lines (46 loc) 1.59 kB
import { ParseClassSchema, ParseFields } from '@Types/fields'; type Indexes = { [key: string]: { [key: string]: any; }; }; type DiffFieldsOutput = { change?: Record<string, Array<string>>; add?: ParseFields; remove?: ParseFields; }; export declare const diffingFields: (obj1: ParseFields, obj2: ParseFields, schemaOptions: SchemaOutputOptions) => DiffFieldsOutput; type ChangedIndexesMap = { [key: string]: Record<string, Indexes>; }; type AddOrRemoveIndexes = Record<string, Indexes>; type DiffIndexesOutput = { change?: ChangedIndexesMap; add?: AddOrRemoveIndexes; remove?: AddOrRemoveIndexes; }; export declare const diffingIndexes: (obj1: Indexes, obj2: Indexes) => DiffIndexesOutput; type CLP = { [key: string]: { [key: string]: any; }; }; type DiffClPOutput = Record<string, CLP>; export declare const diffingCLP: (obj1: CLP, obj2: CLP) => DiffClPOutput; type SchemaParts = { fields?: boolean; indexes?: boolean; classLevelPermissions?: boolean; }; type SchemaOutputOptions = { ignoreClasses?: Array<string>; ignoreAttributes?: Array<string>; }; export declare const getAllSchemas: (parts?: SchemaParts, outputOptions?: SchemaOutputOptions) => Promise<Array<ParseClassSchema>>; type SchemaManagerActions = { commit?: boolean; remove?: boolean; purge?: boolean; }; export declare const manageSchema: (schema: Array<ParseClassSchema>, { commit, remove, purge }: SchemaManagerActions, actionParts?: SchemaParts, schemaOptions?: SchemaOutputOptions) => Promise<Record<string, any>>; export {};