export type GitHubMatrix = {
    os: string;
    'node-version': string;
    'java-version': string;
    'default-environment': string;
    'job-name': string;
    sample: string;
    'samples-group'?: string;
    'sample-type'?: string;
    'sample-file'?: string;
    'sample-folder'?: string;
    generatorOptions?: Record<string, unknown>;
    args?: string;
    'jwt-secret-key'?: string;
    jdl?: string;
};
export type GitHubMatrixGroup = Record<string, Partial<Omit<GitHubMatrix, 'job-name'>> & {
    disabled?: boolean;
}>;
export type GitHubMatrixOutput = {
    include: GitHubMatrix[];
};
export declare const getUnknownGitHubMatrixProperties: (matrix: Partial<GitHubMatrix>) => string[];
export declare const getUnknownGitHubMatrixGroupProperties: (matrixRecord: GitHubMatrixGroup) => string[];
export declare const defaultGithubEnvironment: {
    os: string;
    'node-version': string;
    'java-version': string;
    'npm-version': any;
    'default-environment': string;
    'jwt-secret-key': string;
};
type RandomEnvironmentOptions = {
    useVersionPlaceholders?: boolean;
    javaVersions?: string[];
    nodeVersions?: string[];
};
export declare const convertToGitHubMatrix: (matrix: GitHubMatrixGroup, options?: {
    randomEnvironment?: boolean;
} & RandomEnvironmentOptions) => GitHubMatrixOutput;
export {};
