import { Pathy } from '@bscotch/pathy';
import { GameMakerIssueStatic } from './GameMakerIssue.static.js';
import { GameMakerIssueEnvironment, GameMakerIssueForm, GameMakerIssueUpdateOptions } from './GameMakerIssue.types.js';
import type { StitchProject } from './StitchProject.js';
export declare class GameMakerIssue extends GameMakerIssueStatic {
    readonly project: StitchProject;
    constructor(project: StitchProject);
    get directory(): Pathy<unknown>;
    get attachmentsDirectory(): Pathy<unknown>;
    get formPath(): Pathy<GameMakerIssueForm>;
    get uiLogPath(): Pathy<unknown>;
    get envInfoPath(): Pathy<unknown>;
    readForm<AllowInvalid = undefined>(allowInvalid?: AllowInvalid): Promise<AllowInvalid extends true ? any : GameMakerIssueForm>;
    updateForm(form: Partial<GameMakerIssueForm>): Promise<void>;
    compileReport(options?: {
        cc?: string;
        from?: string;
    }): Promise<{
        plainText: string;
        mailTo: string;
    }>;
    environment(): Promise<GameMakerIssueEnvironment>;
    collectLogs(options?: GameMakerIssueUpdateOptions): Promise<import("./GameMakerEngine.types.js").GameMakerExecutionResults>;
    static listIssues(): Promise<Pathy<unknown>[]>;
}
//# sourceMappingURL=GameMakerIssue.d.ts.map