/** * @license * Copyright 2022 Google LLC * SPDX-License-Identifier: Apache-2.0 */ import {IProcedureModel} from './i_procedure_model'; /** * A data model for a procedure. */ export interface IParameterModel { /** * Sets the name of this parameter to the given name. */ setName(name: string): this; /** * Sets the types of this parameter to the given type. */ setTypes(types: string[]): this; /** * Returns the name of this parameter. */ getName(): string; /** * Return the types of this parameter. */ getTypes(): string[]; /** * Returns the unique language-neutral ID for the parameter. * * This represents the identify of the variable model which does not change * over time. */ getId(): string; /** Sets the procedure model this parameter is associated with. */ setProcedureModel(model: IProcedureModel): this; }