import type Field from "../../../chip-types/field.js"; import { ArrayStorage } from "./array-storage.js"; import { OpenApiTypes } from "../../../schemas/open-api-types.js"; import { type FieldsetInput } from "../../../chip-types/fieldset.js"; import type Context from "../../../context.js"; import Collection from "../../../chip-types/collection.js"; import type { App } from "../../app.js"; import { ItemListResult } from "../../../chip-types/item-list-result.js"; import type CollectionItem from "../../../chip-types/collection-item.js"; export declare class StructuredArray>> extends ArrayStorage> { subfields: Subfields; typeName: string; open_api_type: OpenApiTypes; getOpenApiSchema(context: Context): Promise>; constructor(subfields: Subfields); init(app: App, collection: Collection): Promise; getEmptyElement(): Promise>; isProperElement(context: Context, element: unknown, index: number, item: CollectionItem | undefined): Promise<{ valid: boolean; reason: string; }>; getPostgreSqlFieldDefinitions(): string[]; getAttachments(context: Context, values: any[], // this method gets called once for multiple resources, to limit the number of queries. Field values of all the resources are passed in this array attachment_options: Record): Promise>; getAttachmentIDs(value: FieldsetInput[]): string[]; }