import { NativeCallSyntax } from "../Languages/Properties/Syntax/NativeCallSyntax" ; import { CommandNames } from "../Names/CommandNames" ; import { CommandMetadata } from "./Metadata/CommandMetadata" ; import { SingleParameter } from "./Metadata/Parameters/SingleParameter" ; import { NativeCallCommand } from "./NativeCallCommand" ; /**
 * Inserts an item at an index in a list.
 */ export class ListInsertCommand extends NativeCallCommand { /**
     * Metadata on the command.
     */ private static metadata : CommandMetadata = new CommandMetadata ( CommandNames . ListInsert ) . withDescription ( "Inserts an item at an index in a list" ) . withParameters ( [ new SingleParameter ( "list" , "List to look within." , true ) , new SingleParameter ( "index" , "Index within the list." , true ) , new SingleParameter ( "item" , "Item to add within the list." , true ) , ] ) ; returns public getMetadata ( ) { return ListInsertCommand . metadata ; } returns protected retrieveNativeCallSyntax ( ) { return this . language . syntax . lists . insert ; } }