import { ISignal , Signal } from '@lumino/signaling' ; import { IDebugger } from '../../tokens' ; /**
 * A model for a list of breakpoints.
 */ export class BreakpointsModel implements IDebugger . Model . IBreakpoints { /**
     * Signal emitted when the model changes.
     */ get changed ( ) : ISignal < this , IDebugger . IBreakpoint [ ] > { return this . _changed ; } /**
     * Signal emitted when the breakpoints are restored.
     */ get restored ( ) : ISignal < this , void > { return this . _restored ; } /**
     * Signal emitted when a breakpoint is clicked.
     */ get clicked ( ) : Signal < this , IDebugger . IBreakpoint > { return this . _clicked ; } /**
     * Get all the breakpoints.
     */ get breakpoints ( ) : Map < string , IDebugger . IBreakpoint [ ] > { return this . _breakpoints ; } param id param breakpoints setBreakpoints ( id , breakpoints ) { this . _breakpoints . set ( id , breakpoints ) ; this . _changed . emit ( breakpoints ) ; } param id getBreakpoints ( id ) { return this . _breakpoints . get ( id ) ?? [ ] ; } param breakpoints restoreBreakpoints ( breakpoints ) { this . _breakpoints = breakpoints ; this . _restored . emit ( ) ; } private _breakpoints = new Map < string , IDebugger . IBreakpoint [ ] > ( ) ; private _changed = new Signal < this , IDebugger . IBreakpoint [ ] > ( this ) ; private _restored = new Signal < this , void > ( this ) ; private _clicked = new Signal < this , IDebugger . IBreakpoint > ( this ) ; }