import BaseResource from '../../BaseResource';
import type * as SchemaTypes from '../SchemaTypes';
import type * as SimpleSchemaTypes from '../SimpleSchemaTypes';
export default class Fieldset extends BaseResource {
    static readonly TYPE: "fieldset";
    /**
     * Create a new fieldset
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/fieldset/create
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    create(itemTypeId: string | SimpleSchemaTypes.ItemTypeData, body: SimpleSchemaTypes.FieldsetCreateSchema): Promise<SimpleSchemaTypes.Fieldset>;
    /**
     * Create a new fieldset
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/fieldset/create
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    rawCreate(itemTypeId: string, body: SchemaTypes.FieldsetCreateSchema): Promise<SchemaTypes.FieldsetCreateTargetSchema>;
    /**
     * Update a fieldset
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/fieldset/update
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    update(fieldsetId: string | SimpleSchemaTypes.FieldsetData, body: SimpleSchemaTypes.FieldsetUpdateSchema): Promise<SimpleSchemaTypes.Fieldset>;
    /**
     * Update a fieldset
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/fieldset/update
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    rawUpdate(fieldsetId: string, body: SchemaTypes.FieldsetUpdateSchema): Promise<SchemaTypes.FieldsetUpdateTargetSchema>;
    /**
     * List all fieldsets
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/fieldset/instances
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    list(itemTypeId: string | SimpleSchemaTypes.ItemTypeData): Promise<SimpleSchemaTypes.FieldsetInstancesTargetSchema>;
    /**
     * List all fieldsets
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/fieldset/instances
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    rawList(itemTypeId: string): Promise<SchemaTypes.FieldsetInstancesTargetSchema>;
    /**
     * Retrieve a fieldset
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/fieldset/self
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    find(fieldsetId: string | SimpleSchemaTypes.FieldsetData): Promise<SimpleSchemaTypes.Fieldset>;
    /**
     * Retrieve a fieldset
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/fieldset/self
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    rawFind(fieldsetId: string): Promise<SchemaTypes.FieldsetSelfTargetSchema>;
    /**
     * Delete a fieldset
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/fieldset/destroy
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    destroy(fieldsetId: string | SimpleSchemaTypes.FieldsetData): Promise<SimpleSchemaTypes.Fieldset>;
    /**
     * Delete a fieldset
     *
     * Read more: https://www.datocms.com/docs/content-management-api/resources/fieldset/destroy
     *
     * @throws {ApiError}
     * @throws {TimeoutError}
     */
    rawDestroy(fieldsetId: string): Promise<SchemaTypes.FieldsetDestroyTargetSchema>;
}
