UNPKG

contentful-management

Version:
95 lines (94 loc) 3.22 kB
import type { CursorPaginationParams, DataTypeDefinition, ExoCursorPaginatedCollectionProp, Link, MetadataProps, PointerExpressionValue, ResourceLink } from '../common-types'; export declare const SAME_SPACE_CONTENT_SOURCE: "crn:contentful:::content:spaces/$self/environments/$self"; export type CanonicalDataAssemblyDataTypeField = DataTypeDefinition & { id: string; name: string; }; export type LegacyDataAssemblyDataTypeField = { id: string; name: string; type: string; required?: boolean; source?: string; ref?: unknown; }; export type DataAssemblyDataTypeField = CanonicalDataAssemblyDataTypeField | LegacyDataAssemblyDataTypeField; export type DataAssemblyResourceLinkParameter = { name?: string; description?: string; type: 'ResourceLink'; linkType: 'Contentful:Entry'; allowedResources: Array<{ type: 'Contentful:Entry'; source: typeof SAME_SPACE_CONTENT_SOURCE; allowedTypes: string[]; }>; }; export type DataAssemblyParameterConfig = Record<string, DataAssemblyResourceLinkParameter>; export type DataAssemblyGraphQLResolver = { source: 'Contentful:GraphQL'; query: string; parameters?: PointerExpressionValue; }; export type DataAssemblyNestedResolver = { source: 'Contentful:DataAssembly'; dataAssembly: ResourceLink<'Contentful:DataAssembly'>; parameters?: PointerExpressionValue; }; export type DataAssemblyResolverDefinition = DataAssemblyGraphQLResolver | DataAssemblyNestedResolver; export type DataAssemblyResolverConfig = Record<string, DataAssemblyResolverDefinition>; export type DataAssemblyReturnMappingConfig = PointerExpressionValue; export type DataAssemblySys = { id: string; type: 'DataAssembly'; dataType: DataAssemblyDataTypeField[]; version: number; space: Link<'Space'>; environment: Link<'Environment'>; createdBy: Link<'User'>; createdAt: string | Date; updatedAt: string | Date; updatedBy?: Link<'User'>; publishedAt?: string | Date; publishedVersion?: number; publishedCounter?: number; firstPublishedAt?: string | Date; publishedBy?: Link<'User'> | Link<'AppDefinition'>; variant?: string; }; type DataAssemblyCommonProps = { metadata: Pick<MetadataProps, 'tags'>; name: string; description: string; parameters: DataAssemblyParameterConfig; resolvers: DataAssemblyResolverConfig; return: DataAssemblyReturnMappingConfig; }; export type DataAssemblyProps = DataAssemblyCommonProps & { sys: DataAssemblySys; }; export type CreateDataAssemblyProps = DataAssemblyCommonProps & { sys: { type: 'DataAssembly'; variant?: string; dataType: DataAssemblyDataTypeField[]; }; }; export type UpdateDataAssemblyProps = DataAssemblyCommonProps & { sys: { id: string; type: 'DataAssembly'; variant?: string; version: number; dataType: DataAssemblyDataTypeField[]; }; }; export type DataAssemblyQueryOptions = CursorPaginationParams & { 'sys.id[in]'?: string; }; export type DataAssemblyCollection = ExoCursorPaginatedCollectionProp<DataAssemblyProps> & { errors?: { notFoundIds: string[]; }; }; export {};