#pragma once
#include "linglong/builder/linglong_builder.h"
#include "linglong/cli/cli.h"
#include <string>
#include <vector>
struct CreateCommandOptions
{
std::string projectName;
};
struct BuildCommandOptions
{
std::vector<std::string> commands;
bool buildOffline = false;
linglong::builder::BuilderBuildOptions builderSpecificOptions;
};
struct RunCommandOptions
{
std::vector<std::string> execModules;
std::vector<std::string> commands;
bool debugMode = false;
};
struct ListCommandOptions
{
};
struct RemoveCommandOptions
{
std::vector<std::string> removeList;
};
struct ExportCommandOptions
{
linglong::builder::ExportOption exportSpecificOptions;
bool layerMode = false;
std::string outputFile;
};
struct PushCommandOptions
{
std::vector<std::string> pushModules;
linglong::cli::RepoOptions repoOptions;
};
struct ImportCommandOptions
{
std::string layerFile;
};
struct ImportDirCommandOptions
{
std::string layerDir;
};
struct ExtractCommandOptions
{
std::string layerFile;
std::string dir;
};
struct RepoSubcommandOptions
{
linglong::cli::RepoOptions repoOptions;
};