/**
* The Section model module.
* @module Ntnx/Section
* @version 4.1.1-beta-1
* @class Section
*
* @param { string } name Name of the section.
*
* @param { Row[] } rows List of row in the section.
*/
export default class Section {
/**
* Constructs a Section from a plain JavaScript object, optionally creating a new instance.
* Copies all relevant properties from data to obj if supplied or a new instance if not.
* @param {Object} data The plain JavaScript object bearing properties of interest.
* @param {module:Ntnx/Section} obj Optional instance to populate.
* @param callFromChild {Boolean} Flag to recognise calling instance
* @return {module:Ntnx/Section} The populated Section instance.
*/
static constructFromObject(data: any, obj?: any, callFromChild?: boolean): any;
/**
* Converts a given snake_case string to camelCase.
* @param {string} snakeStr - The input string in snake_case format.
* @returns {string} - The converted string in camelCase format.
*/
static snakeToCamel(snakeStr: string): string;
/**
* Constructs a new Section.
* A section is a group of rows consisting of widgets.
* @alias module:Ntnx/Section
*
* @param { string } name Name of the section.
*
* @param { Row[] } rows List of row in the section.
*/
constructor(name: string, rows: Row[]);
name: string;
rows: Row[];
$objectType: string;
/** @type {object} */
$reserved: object;
/** @type {object} */
$unknownFields: object;
/**
* Returns Name of the section.
* @return {string}
*/
getName(): string;
/**
* Sets Name of the section.
* @param {string} name Name of the section.
*/
setName(name: string): void;
/**
* Returns Description of the section.
* @return {string}
*/
getDescription(): string;
/**
* Sets Description of the section.
* @param {string} description Description of the section.
*/
setDescription(description: string): void;
description: string;
/**
* Returns List of row in the section.
* @return {Row[]}
*/
getRows(): Row[];
/**
* Sets List of row in the section.
* @param {Row[]} rows List of row in the section.
*/
setRows(rows: Row[]): void;
/**
* @return {RepeatCriteria}
*/
getRepeatCriteria(): RepeatCriteria;
/**
* @param {RepeatCriteria} repeatCriteria
*/
setRepeatCriteria(repeatCriteria: RepeatCriteria): void;
repeatCriteria: RepeatCriteria;
/**
* @return {TimeFilter}
*/
getTimeFilter(): TimeFilter;
/**
* @param {TimeFilter} timeFilter
*/
setTimeFilter(timeFilter: TimeFilter): void;
timeFilter: string;
get$Reserved(): any;
get$ObjectType(): string;
get$UnknownFields(): any;
toJson(forMutation: any): any;
validate(scope: any, properties: any, ...args: any[]): Promise;
validateProperty(scope: any, property: any): ValidationError;
#private;
}
import Row from "./Row";
import RepeatCriteria from "./RepeatCriteria";
import TimeFilter from "./TimeFilter";
import ValidationError from "../../../validation/ValidationError";